#include<stdio.h>
int sum(int a,int b)
{
int i,sum;
for(i=a;i<b;i++)
sum=sum+i;
return(sum);
}
int main()
{
int z;
int sum(int a,int b);
z=sum(1,10);
printf("%d",z);
}
为什么结果是46,不是45
因为你没有对sum变量进行初始化,这样sum的默认值是所指向地址所存储的值,这个数值是随机的,得到的结果可能会出现偏差。修改代码如下:
#include<stdio.h>执行的结果如下: