关于#c语言#的问题:计蒜客财务管理

计蒜客题目(C语言)
我的程序做出来结果不对,自己是个初学者,刚刚练习,实在没看出哪有问题,不知道错在哪里。哪位兄弟可以帮忙分析一下,谢谢。

img

img

img

  • img

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,而且数组是会溢出的,得开大一点

img

代码:

#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;
}

不知道你这个问题是否已经解决, 如果还没有解决的话:

如果你已经解决了该问题, 非常希望你能够分享一下解决方案, 写成博客, 将相关链接放在评论区, 以帮助更多的人 ^-^