#include <
stdio.h>
#include <
stdlib.h>
int main()
{
int n,loop;
int *score;
int max,min,average;
int num;
printf("请输入学生人数:");
scanf("%d",&n);
score = (int *)malloc(sizeof(int) *n);
if(score == NULL)
{
exit(0);
}
for(loop = 0; loop < n; loop++)
{
scanf("%d",&score[loop]);
if(loop == 0)
{
max = min = average = score[0];
}
else
{
if(max < score[loop])
{
max = score[loop];
}
if(min > score[loop])
{
min = score[loop];
}
average += score[loop];
}
}
average /= n;
num = 0;
for(loop = 0; loop < n; loop++)
{
if(score[loop] > average)
{
num++;
}
}
printf("最高分为%d\n", max);
printf("最低分为%d\n", min);
printf("平均分为%d\n", average);
printf("超过平均分人数为%d\n", num);
free(score);
return 0;
}
追问![](https://video.ask-data.xyz/img.php?b=https://iknow-pic.cdn.bcebos.com/f603918fa0ec08fa00c6fa3a5aee3d6d54fbda6d?x-bce-process=image%2Fresize%2Cm_lfit%2Cw_600%2Ch_800%2Climit_1%2Fquality%2Cq_85%2Fformat%2Cf_auto)
求得答案不对呀
追答输入的时候要求10 20 30,是空格,不能使用,逗号,如果想使用,逗号,第二个scanf需要修改
#include <stdio.h>
#include <stdlib.h>
int main()
{
。。。。省略
for(loop = 0; loop < n; loop++)
{
scanf("%d,",&score[loop]);
if(loop == 0)
{
max = min = average = score[0];
}
else
{
if(max < score[loop])
{
max = score[loop];
}
if(min > score[loop])
{
min = score[loop];
}
average += score[loop];
}
}
省略。。。、。
return 0;
}