#include?<stdio.h>
#define?N?10;
//打印分?jǐn)?shù)
void?printScore(int?score[])
{
int?i;
printf("\n");
for(i=0;i<N;i++)
{
printf("%d?",?score[i]);
}
printf("\n");
}
//計(jì)算考試總分
int?getTotalScore(int?score[])
{
????int?i;
????int?sum?=?0;
????for(i?=?0;?i?<?N;?i++)
????{
????????sum?+=?score[i];
????}
????return?sum;
}
//計(jì)算最高分
int?getMax(int?score[])
{
????int?i;
????int?max?=?-1;
????for(i=0;?i<N;?i++)
????{
????????if(score[i]?>?max)
????????{
????????????max?=?score[i];
????????}
????}
????return?max;
}
//計(jì)算最低分
int?getMin(int?score[])
{
????int?i;
????int?min?=?100;
????for(i?=?0;?i?<?N;?i++)
????{
????????if(score[i]?<?min)
????????{
????????????min?=?score[i];
????????}
????}
????return?min;
}
//計(jì)算平均分
float?getAvgScore(int?score[])
{
????return?getTotalScore(score)/N;
}
//?分?jǐn)?shù)降序排序
void?sort(int?score[])
{
????int?i,?j;
????int?temp;
????for(i=N-2;i>=0;i--)
{
for(j=0;j<=i;j++)
{
if(score[j]<score[j+1])
{
int?temp;
temp?=?score[j];
score[j]?=?score[j+1];
score[j+1]=temp;
}
}
}
????/*
????for(i?=?0,?i?<?N?-?1,?i++)
????{
????????for(j?=?0;?j?<?N?-?i?-1;?j++)
????????{
????????????if(score[j]?<?score[j?+?1])
????????????{
????????????????temp?=?score[j];
????????????????score[j]?=?score[j?+?1];
????????????????score[j?+?1]?=?temp;
????????????}
????????}
????}
????*/
????printScore(score);
}
int?main()
{
????int?score[N]={67,98,75,63,82,79,81,91,66,84};
????int?sum,?avg,?max,?min;
????sum?=?getTotalScore(score);
????avg?=?getAvgScore(score);
????max?=?getMax(score);?????????//?EK:為什么數(shù)組可以不加[N]??????
????min?=?getMin(score);
????printf("總分是:%d\n",?sum);
????printf("最高分是:%d\n",?max);
????printf("最低分是:%d\n",?min);
????printf("平均分是:%d\n",?average);??????//?EK:設(shè)置成單精度?
????printf("班級10個(gè)學(xué)生的考試成績降序排序?yàn)椋?);
????sort(score);
????//?EK:通過函數(shù)排序后,原數(shù)列排序變化了嗎?
????/*
????EK:測試代碼如下
????int?i;
????for(i?=?0;?i?<?N;?i++)
????{
????????printf("%d?",?score[i]);
????}
????*/
????return?0;
}
2017-07-31
把所有N改成10,然后主函數(shù)里你前面定義的是avg后面用的是average不一樣,改了之后就對了
2017-08-01
檢查出問題原因了,定義常量N的時(shí)候多加了一個(gè)分號 ; ?
這下總算是記住了,檢查了N久,錯(cuò)誤印象十分深刻。
其他小錯(cuò)誤就如上面那位大神提到的,avg和average不一致。
以后千萬記?。?/p>
“定義常量不需要加分號!”
“定義常量不需要加分號!”
“定義常量不需要加分號!”