-3
#include<stdio.h>
#include<conio.h>
#include<string.h>


int fun1(int *_array)
{
    for(int i = 0; i < 5; i++) {
        printf("\nenter an input\n");
        scanf("%f", &_array[i]);
    }

}
int main()
{
    int _array[5];
    int sum;

    fun1(&_array[5]);

    printf("\nInput    Value    Address\n");
    for(int i = 0; i < 5; i++) {
        printf("%d          %_array          %_array\n", i, _array[i], &_array);
    }
    for(int s = 0; s < 5; s++) {
        sum += _array[s];
    }
    printf("The sum of these values is %d", sum);
    getch();
}

我尝试编译它,我得到一个长长的错误列表(28 个错误)。在我拥有的三个 for 循环中,它们似乎主要是语法和未声明的标识符错误,但它们没有意义,因为循环和计数器似乎是正确编写和声明的。任何人都可以解释/看看我做错了什么吗?

我最近编写的其他程序也遇到了类似的问题,包括 for 循环,所以任何帮助/见解都会有帮助

4

1 回答 1

2

也许您正在使用 C89 编译器?

C99 引入了一些新的东西,其中包括for控制组变量的定义。

for (int i = 0; i < 1; i++) printf("%d\n", i); // only C99
//   ^^^^ new stuff in C99

在 C89 语法中,相同的循环必须是

int i;
for (i = 0; i < 1; i++) printf("%d\n", i);
于 2014-03-17T17:01:54.757 回答