对'WinMain'的未定义引用[错误] ld返回1个退出状态,将矩阵作为参数传递给函数

问题描述 投票:0回答:2

我开始学习C语言的编程,我要做的任务是在另一个文件中编写部分代码的程序。但是我在最后一部分遇到了问题,因为我正在使用矩阵。

这里是主体:

#include <stdio.h>
#include "otsenkatry.c"

int main()
{
    int i, j;
    int a[i];
    int s, gru;
    char A, B, C, D, E;

    printf("Introduce the number os students ", &s);
    fflush(stdout);
    scanf("%d", &s);
    printf("Introduce their grades\n");
    fflush(stdout);

    for (i = 0; i<s; i++)
    { 
        printf("a[%d] = ", i); 
        fflush(stdout);
        scanf("%d", &a[i]);

        printf("Grade: %d  %d \n", a, otsenkatry(a));
        fflush(stdout);//}
    }

    return 0;                       
}

这就是问题所在:

int otsenkatry (int* a)
{
    int i;
    int gru;

    if (a[i]<51)
    {   
        gru=2;
    }
    if (a[i]>50 && a[i]<69)
    {
        gru=3;
    }
    if (a[i]>69 && a[i]<=85)
    {
        gru=4;
    }
    if (a[i]>85 && a[i]<=100)
    {
        gru=5;
    }

    return gru;                         
}

我认为这与指针有关,但是我不知道如何更改它。

c function pointers matrix structure
2个回答
0
投票

您的矩阵的大小不确定:

int i, j;
int a[i];

要正确声明矩阵a[],您需要传递大小-i变量的值。不幸的是,i变量在上面没有声明任何值的情况下被声明为一行。


0
投票

您的代码有一些问题:

© www.soinside.com 2019 - 2024. All rights reserved.