嗨,我对编程有些陌生,我刚刚遇到了一个新错误,即“函数的参数太少”,不知道这意味着什么。我一直在试图弄清楚代码到底有什么问题,但是到目前为止我还没有运气。有什么建议吗?预先感谢!
int sumRange(int lowerNumber, int higherNumber);
int main()
{
int lowerNumber,
higherNumber,
sum;
scanf("%d%d", lowerNumber, higherNumber);
printf("\nThe smaller number is %d and the larger number is %d", lowerNumber,higherNumber);
printf("\nThe sum number of all ranges for both numbers is: %d", sumRange(sum));
}
int sumRange(int lowerNumber, int higherNumber)
{
int x,
total;
for(x = lowerNumber; x <= higherNumber; x++)
{
total = total + x;
}
return x;
}
答案 0 :(得分:1)
函数main()缺少开头的{和final}。 另外,在功能sumRange中,您可能需要返回总数,而不是x。
此外,在“ printf(” \ n“行中,这两个数字的所有范围的总和为:%d”,sumRange(sum));“ 您仅使用一个参数调用sumRange。您应该使用两个参数来调用它:sumRange(lowerNumber,higherNumber)
答案 1 :(得分:1)
您必须初始化“总计”。
int sumRange(int lowerNumber, int higherNumber)
{
int x,
total;
total = 0;
for(x = lowerNumber; x <= higherNumber; x++)
{
total = total + x;
}
return total;
}
答案 2 :(得分:0)
我刚遇到了这个新错误,即“函数的参数太少”,却不知道这是什么意思
这意味着该函数未提供其定义中存在的所有参数。
函数在这里定义:
int sumRange(int lowerNumber, int higherNumber);
如您所见,定义中有两个参数:int lowerNumber, int higherNumber
。但是您在这里使用该功能:
printf("\nThe sum number of all ranges for both numbers is: %d", sumRange(sum));
仅为该函数提供一个参数。由于您正在用scanf读取参数,因此正确的用法是:
printf("\nThe sum number of all ranges for both numbers is: %d", sumRange(lowerNumber, higherNumber));