我正在学习计算机科学课程,并编写了一个简单的程序来求给定(输入)输入量的平均值。
#include <stdio.h>
#include <cs50.h>
int main(void)
{
int n = get_int("Please enter the number of scores: ");
int scores = [n];
for(int i=0; i<n; i++)
{
int scores[i] = get_int("Please, enter the score: ");
}
printf("Average: %fn", average(n, scores));
}
float average(int length, int array[])
{
int sum = 0;
for(int i = 0; i < length; i++)
{
sum += sum + array[i];
}
return sum / (float)length;
}
编译时,"预期表达式";错误发生在第10行(即{int scores = [n];}
-任何帮助或建议将不胜感激!!
语法无效:
int scores = [n];
如果您想将scores
定义为大小为n
的数组,则需要:
int scores[n];
同样,这也不像你期望的那样:
int scores[i] = get_int("Please, enter the score: ");
这将创建一个大小为i
的名为scores
的数组,屏蔽前面定义的数组,并尝试用单个值而不是值列表来初始化它。如果你想给已经存在的数组赋值,你需要:
scores[i] = get_int("Please, enter the score: ");