[問題] 有關一題陣列的問題???
( *[1m *[m 為色碼,可以按 Ctrl+V 預覽會顯示的顏色 )
( 未必需要依照此格式,文章條理清楚即可 )
遇到的問題: (題意請描述清楚)
這是一題入未定個數的資料到陣列裡的題目
程式碼如下(求成績平均):
#include <stdio.h>
#include <stdlib.h>
#define MAX 10
int main(void)
{
int score[MAX];
int i=0,num;
int sum=0;
printf("請輸入成績,要結束時請按0:\n");
do
{
printf("請輸入成績:");
scanf("%d",&score[i]);
}while(score[i++]>0);
num=i-1;
for(i=0;i<num;i++)
sum=sum+score[i];
printf("平均成績為 %.2f\n",(float)sum/num);
system("pause");
return 0;
}
假設輸入4個成績70、80、90、60,平均為75.00
由於最後為了結束按了0,所以num=i-1,到這邊我能理解!!
可是為什麼這時的i=5 ??
i=0開始,輸入次數為(4+1)次,i應該等於4才是呀???
為什麼最後又變i+1=5呢???
希望得到的正確結果:
程式跑出來的錯誤結果:
開發平台: (例: VC++ or gcc/g++ or Dev-C++, Windows or Linux)
dev-c++
有問題的code: (請善用置底文標色功能)
補充說明:
--
※ 發信站: 批踢踢實業坊(ptt.cc)
◆ From: 114.38.97.109
推
06/02 13:53, , 1F
06/02 13:53, 1F
C_and_CPP 近期熱門文章
PTT數位生活區 即時熱門文章