计蒜客题目(C语言)
我的程序做出来结果不对,自己是个初学者,刚刚练习,实在没看出哪有问题,不知道错在哪里。哪位兄弟可以帮忙分析一下,谢谢。
1.定义不能是int ,因为你要输入的是浮点型。
2。数组使用应该是0-11,而不是1-12;
int main() {
double arr[12];
int i;
double sum = 0;
double ave;
for (i = 0; i < 12; i++) {
scanf("%f", &arr[i]);
sum += arr[i];
}
ave = sum / 12;
printf("$%.2f", ave);
return 0;
}
arr数组类型搞错了,应该是double不是Int,而且数组是会溢出的,得开大一点
代码:
#include<stdio.h>
int main() {
double arr[13];//这里
int i;
double sum = 0,ave;
for (i = 1; i <= 12; i++) {
scanf("%f", &arr[i]);
sum += arr[i];
}
ave = sum / 12;
printf("$%.2f", ave);
return 0;
}
代码里数组的数据类型不能用 int ,需为 double ,循环输入里for(i=0;i<12;i++) ,数组下标arr[0--11] ,按代码的写法,数组越界了,其实不需要数组也可以的,修改如下,供参考:
#include <stdio.h>
int main()
{
int n = 12;
double s = 0, t;
while (n--) {
scanf("%lf", &t);
s += t;
}
printf("$%.2f", s / 12.0);
return 0;
}
不知道你这个问题是否已经解决, 如果还没有解决的话: