#include <stdio.h>
int main() {
int i,n;
float ave = 0;
float sum = 0;
float max = 0;
float min = 0;
scanf("%d",&n);
float score[100] = {0.0};
for(i=0;i<n;i++)
{
scanf("%f ",&score[i]);
}
max = score[0];
min = score[0];
for(i=0;i<n;i++)
{
ave += score[i];
if(score[i]<min)
{
min = score[i];
}
if(score[i]>max)
{
max = score[i];
}
sum +=score[i];
}
ave = sum/n;
printf("%.2f %.2f %.2f",max,min,ave);
return 0;
}
刚开始数组定义的时候用的时float score[n];编译无法通过。然后没有把最大值和最小值先定义为score[0];都定义的是0,这样最小值一直就是0了,就不对。最大值,最小值,可以不用替换,直接比较大小,赋值,更简单一点。还看到有人没有把最大值和最小值先定义为score[0],而是直接把最大值定义为0,最小值定义为100。



京公网安备 11010502036488号