问题:求样本均值
输入格式
输入有两行,第一行包含一个整数 n(1≤n<100),代表样本容量;
第二行包含 n 个绝对值不超过 1000 的浮点数,代表各个样本数据。
输出格式
输出一行,包含一个浮点数,表示均值,精确到小数点后 4 位。
运行结果却是inf,不知道哪里出来问题,求各位巨佬解解惑
问题:求样本均值
输入格式
输入有两行,第一行包含一个整数 n(1≤n<100),代表样本容量;
第二行包含 n 个绝对值不超过 1000 的浮点数,代表各个样本数据。
输出格式
输出一行,包含一个浮点数,表示均值,精确到小数点后 4 位。
运行结果却是inf,不知道哪里出来问题,求各位巨佬解解惑
应该是因为把样本数量的int型变量n定义成了double,所以发生错误, 改为int后,结果和题目给出的一致。
#include <stdio.h>
int main(void){
int i;
double t,a[99],sum=0;
int n;
scanf("%d",&n);
for(i=0;i<n;i++){
scanf("%lf",&a[i]);
sum=sum+a[i];
}
sum=sum*1.0;
t=sum/n;
printf("%.4lf",t);
return 0;
}