C 犯了三个错误

C 犯了三个错误,c,C,此代码显示以下错误: 类型前缺少 calc:参数太少,无法调用 Visual stuio 2013平台语法错误 霉菌代码: #include "math.h" void main() { float num[5]; float (calc (float num[5])); calc(float num);/* transferring control to calc function)*/ getch();

此代码显示以下错误:

类型前缺少 calc:参数太少,无法调用 Visual stuio 2013平台语法错误 霉菌代码:

  #include "math.h"
    void main()
    {
        float num[5];
        float (calc (float num[5]));
        calc(float num);/* transferring control to calc function)*/
        getch();
    }
    float calc(float nun[5])
    {
        int i;
        float num[5];
        float sum, avg, sqmn1, sumsqmn = 0, sqsd = 0; float sd;
        printf("\nEnter 5 numbers");
        for (i = 0; i < 5; i = i + 1)
        {
            scanf("%f", &num[i]);
        }
        sum = 0;
        for (i = 0; i < 5; i = i + 1)
        {
        sum = sum + num[i];
        }
        avg = sum / 5;
        for (i = 0; i < 5; i = i + 1)
        {
        sqmn1 = (avg - num[i])*(avg - num[i]);
            sumsqmn = sumsqmn + sqmn1;
        }
        sqsd = sumsqmn / 5;
        sd = sqrt(sqsd);
        printf("\nThe sum is %f", sum);
        printf("\nThe average is %f", avg);
        printf("\nThe stabdard deviation is %f", sd);
        getch();
    }
浮动计算浮动数值[5]

在你看来,这到底是什么

依我看,可以,

float ff;
ff = calc(num);
除此之外,

缺少包含。 浮动calcfloat nun[5]的远期申报缺失。 你可以把你的主电路重新布线


但同时,您将num从main传递到calc,但我看到您从未使用过它。你在忙什么?

啊。哪个代码。。。?好的,上面那一行?我们是人类,不是编译器,请将您的代码格式化。您希望它如何编辑,先生?不要叫我先生,我是女士。:-。不用担心编辑,它已经被处理好了;使用这些函数来修复错误。改为在主函数外尝试向前声明calc,如下所示:float calcfloat num//然后是主函数float calc float num[5];这是一份远期声明。它应该移到主管道外。将前向声明放在函数定义之外是一种很好的做法。此外,应该删除多余的括号:float calcfloat num[5]@克拉斯林德贝克感谢你补充这一点。看到返回的值没有被捕获,我觉得不是这样。
int main()
    {
        float num[5];
        float ff;
        ff = calc(num);/* transferring control to calc function)*/
        getch();

        return 0;
    }