【发布时间】:2018-09-06 21:34:02
【问题描述】:
所以我正在编写一个关于查找所有范围之和的程序,例如,如果我输入一个 1,然后输入一个 10,它应该显示 55,但它会显示一些长随机数。有谁知道这段代码有什么问题?谢谢!
#define <stdio.h>
calculateSum(int lowNumber, int highNumber);
int main()
{
int lowerNumber,
higherNumber;
scanf("%d", lowerNumber);
scanf("%d", higherNumber);
printf("The sum of all ranges is: %d", calculateSum(lowerNumber, higherNumber));
int calculateSum(int lowNumber, int highNumber)
{
int total;
for(int x = lowNumber; x <= highNumber; x++)
{
total = total + x;
}
return total;
}
【问题讨论】:
-
这是无效的 C.
#define <stdio.h>?不应该是#include吗?在您开始下一个 fn 之前,您的主 fn 也不会关闭。还要在使用前将total设置为0 -
在
calculateSum中,你没有初始化total,所以它的初始值是随机的。使用int total = 0;正确设置