![](https://img.laitimes.com/img/__Qf2AjLwojIjJCLyojI0JCLicGcq5iMhFmYxYWO0YWO3ETYyIDO5IWZ0UDOxkjM1EGZhJGNy8CX5d2bs92Yl1iclB3bsVmdlR2LcNWaw9CXt92Yu4GZjlGbh5yYjV3Lc9CX6MHc0RHaiojIsJye.jpg)
題目要求:
在一個長度為10的整型數組裡面,儲存了班級10個學生的考試成績。
要求編寫5個函數,分别實作計算考試的總分,最高分,最低分,平均分和考試成績降序排序。
#include
#define N 10
//列印數組
void printNum(int score[])
{
int i;//C語言中不能在for()中定義
for(i=0;i
{
if(i
{
printf("%d ",score[i]);
}
else
{
printf("%d\n",score[i]);
}
}
}
//計算考試的總分
int getSum(int score[])
{
int i;
int sum=0;
for(i=0;i
{
sum+=score[i];
}
return sum;
}
//最高分,
int getMax(int arr[])
{
int max=arr[0];
int i;
for(i=1;i
{
if(arr[i]>max)
{
max=arr[i];
}
}
return max;
}
//最低分,
int getMin(int arr[])
{
int min=arr[0];
int i;
for(i=1;i
{
if(arr[i]
{
min=arr[i];
}
}
return min;
}
//平均分
int getAverage(int arr[])
{
int sum=getSum(arr);
return sum/N;
}
//考試成績降序排序
void sortArr(int arr[])
{
//冒泡排序
int i,j;
for(i=N-1;i>=0;i--)
{
for(j=0;j
{
if(arr[j]
{
int temp=arr[j];
arr[j]=arr[j+1];
arr[j+1]=temp;
}
}
}
}
int main()
{
int score[N]={67,98,75,63,82,79,81,91,66,84};
printf("考試成績:");
printNum(score);
printf("總分:%d\n",getSum(score));
printf("最高分:%d\n",getMax(score));
printf("最低分:%d\n",getMin(score));
printf("平均分:%d\n",getAverage(score));
printf("降序排列:");
sortArr(score);
printNum(score);
return 0;
}