问题描述
班上有学生若干名,给出每名学生的年龄(整数),求班上所有学生的平均年龄,保留到小数点后两位。
输入
本题有多组测试数据,每组测试数据描述如下:
首先是一个整数n,表示班级里有n个人,然后是n个正整数,表示班上n的人的年龄。其中1<=n<=1000.
输出
每组测试数据输出一行,给出班上所有学生的平均年龄,结果保留两位小数。
输入样列
5 1 2 3 4 5
4 1 2 3 4
输出样例
3.00
2.50
#include<stdio.h>
int main()
{
int n,i;
int age[i];
double sum,ave;
while(~scanf("%d",&n)){
sum=0;
for(i=0;i<n;i++){
scanf("%d",&age[i]);
sum+=age[i];
}
ave=sum/n;
printf("%.2f\n",ave);
}
return 0;
}
帮你修改好了
#include <stdio.h>
#define N 1000
int main()
{
int n, i;
int age[N];
float sum, ave;
while (scanf("%d", &n) == 1)
{
sum = 0;
for (i = 0; i < n; i++)
{
scanf("%d", &age[i]);
sum += age[i];
}
ave = sum / n;
printf("%.2f\n", ave);
}
return 0;
}
第5行,数组定义修改为:int age[100];
#include<stdio.h>
int main()
{
int n,i;
int age[100];
double sum,ave;
while(~scanf("%d",&n)){
sum=0;
for(i=0;i<n;i++){
scanf("%d",&age[i]);
sum+=age[i];
}
ave=sum/n;
printf("%.2f\n",ave);
}
return 0;
}