不知道起个什么名字. 2022-11-10 15:24 采纳率: 0%
浏览 8

为什么默认初始值不为0?

#include<stdio.h>
int main()
{
int y,x,a,b,c,d;
for(x=1000;x<=9999;x++)
{
a=x/1000;
b=(x-a1000)/100;
c=(x-a
1000-b100)/10;
d=x-a
1000-b100-c10;
if(a+b==c+d)
y++;
}
printf("1000~9999之间有%d个满足要求的数",y);
return 0;

}
为什么在声明变量的时候,x和y谁在后面谁的初值就会是1,在前面的初值为0?不是不赋值的时候默认初始值为0吗?

  • 写回答

3条回答 默认 最新

  • 快乐鹦鹉 2022-11-10 15:31
    关注

    不是不赋值的时候默认初始值为0吗-----这跟编译器有关,有的会初始化为0,有的不会。因此最好自己写初始化值。

    评论

报告相同问题?

问题事件

  • 创建了问题 11月10日