项目场景:
变量定义时记得赋初始值
问题描述
#include <stdio.h>
int main()//while的三个表达式
{
//求1—100的和
int data=1;//第一个表达式,条件的初始化值
int sum;//变量最好初始化为0,养成好的编码习惯
while(data<=100){//第二个表达式,条件的临界值
sum+=data;
data++;//第三个表达式,条件发生变化
}
printf("1-100的和为:%d\n",sum);
return 0;
}
可能无法实现自己想要的代码功能,如上代码可能最后的结果不为5050
原因分析:
如代码所示,上面的sum变量没有赋初始值,当代码运行起来时,会在编译时赋予其一个随机的数,导致最后的结果不正确
解决方案:
#include <stdio.h>
int main()//while的三个表达式
{
//求1—100的和
int data=1;//第一个表达式,条件的初始化值
int sum=0;//变量最好初始化为0,养成好的编码习惯
while(data<=100){//第二个表达式,条件的临界值
sum+=data;
data++;//第三个表达式,条件发生变化
}
printf("1-100的和为:%d\n",sum);
return 0;
}
给变量sum赋予一个初始值,使其不会变为随机赋值即可