程序:
#include <stdio.h>
int main(int argc, const char *argv[])
{
int score[10];
int max,min;
int maxi,mini;
int avg;
int i;
for(i=0;i<10;i++)
{
printf("请输入第%d个同学的成绩\n",i+1);
scanf("%d",&score[i]);
}
//求最大值,由于数组使用元素是从score[0]开始,所以i的初始值赋予0;
max=score[0];
maxi=0;
for(i=0;i<10;i++)
{
if(max<score[i])
{
max=score[i];
maxi=i;
}
}
//求最小值
min=score[0];
mini=0;
for(i=0;i<10;i++)
{
if(min>score[i])
{
min=score[i];
mini=i;
}
}
//求平均分,由于要求平均分,所以应该先算出十个分数的和;
int sum=0;
for(i=0;i<10;i++)
{
sum=sum+score[i];
}
avg=sum/10;
printf("最高分是%d,是第%d个同学\n",max,maxi+1);
printf("最低分是%d,是第%d个同学\n",min,mini+1);
printf("平均分是%d\n",avg);
//使用冒泡排序求排列顺序,
for(i=1;i<10;i++) //外层循环控制趟数
{
for(int j=0;j<10-i;j++) //内层循环控制每次交换的次数
{
if(score[j]>score[j+1])
{
int temp=score[j];
score[j]=score[j+1];
score[j+1]=temp;
}
}
}
printf("从小到大排序:");
for(i=0;i<10;i++)
{
printf("%d\t",score[i]);
}
putchar(10);
return 0;
}
运行效果: