#include <stdio.h>
//计算考试总分
int total(int score[])
{
int i;
int total = 0;
for(i=0;i<=9;i++)
{
total += score[i];
}
return total;
}
//计算考试最高分数
int highest(int score[])
{
int i;
for(i=0;i<=9;i++)
{
if(score[i]>score[i+1]) //调换顺序
{
int n = score[i];
score[i] = score[i+1];
score[i+1] = n;
}
}
return score[9];
}
//计算考试最低分数
int lowest(int score[])
{
int i;
for(i=0;i<=8;i++)
{
if(score[i]<score[i+1])
{
int n = score[i];
score[i] = score[i+1];
score[i+1] = n;
}
}
return score[0];
}
//计算考试平均分数
int average(int score[])
{
int n = total(score);
int av = n/10;
return av;
}
//考试分数降序排列
int down_ordinary(int score[])
{
int i;
int j;
for(i=9;i>=1;i--)
{
for(j=1;j<=i;j++)
{
if(score[j]<score[j+1])
{
int n = score[j];
score[j] = score[j+1];
score[j+1] = n;
}
}
}
printf("考试成绩降序排列为:");
for(i=1;i<=9;i++)
{
printf("%d ",score[i]);
}
return 0;
}
//主函数
int main()
{
int score[10]={67,98,75,63,82,79,81,91,66,84};
printf("考试总分为%d\n",total(score));
printf("考试最高分为%d\n",highest(score));
printf("考试最低分为%d\n",lowest(score));
printf("考试平均分为%d\n",average(score));
down_ordinary(score);
return 0;
}输出结果
考试总分为786 考试最高分为98 考试最低分为75 考试平均分为78 考试成绩降序排列为:586547409 98 91 84 82 81 79 67 66
为什么多了一个586547409出来?还有 75,63两项不见了
#include <stdio.h>
//计算考试总分
int total(int score[])
{
int i;
int total = 0;
for(i=0;i<=9;i++)
{
total += score[i];
}
return total;
}
//计算考试最高分数
int highest(int score[])
{
int i;
for(i=0;i<=9;i++)
{
if(score[i]>score[i+1]) //调换顺序
{
int n;
n = score[i];
score[i] = score[i+1];
score[i+1] = n;
}
}
// printf("%d\n",score[9]);
return score[9];
}
//计算考试最低分数
int lowest(int score[])
{
int i;
for(i=0;i<=8;i++)
{
if(score[i]<score[i+1])
{
int n = score[i];
score[i] = score[i+1];
score[i+1] = n;
}
}
return score[0];
}
//计算考试平均分数
int average(int score[])
{
int n = total(score);
int av = n/10;
return av;
}
//考试分数降序排列
int down_ordinary(int score[])
{
int i;
int j;
for(i=9;i>=0;i--)
{
for(j=0;j<i;j++)
{
if(score[j]<score[j+1])
{
int n;
n = score[j];
score[j] = score[j+1];
score[j+1] = n;
}
}
}
printf("考试分数降序排列:");
for(i=0;i<10;i++)
{
// printf("%d\n",score[0]);
printf("%d ",score[i]);
}
return 0;
}
//主函数
int main()
{
int score[10]={67,98,75,63,82,79,81,91,66,84};
printf("考试总分为%d\n",total(score));
printf("考试最高分为%d\n",highest(score));
printf("考试最低分为%d\n",lowest(score));
printf("考试平均分为%d\n",average(score));
down_ordinary(score);
return 0;
}
给你改了下,在“考试分数降序排列”这下面的部分代码错误了,你再看看。
把62-68行代码改成:
for(i=9;i>=0;i--)
{
for(j=0;j<i;j++)
{
if(score[j]<score[j+1])
{
n = score[j];
就可以了。