松V溪 2022-04-21 15:09 采纳率: 66.7%
浏览 23

c语音编译原理不理解

#include<stdio.h>
int main()
{
int a=0,b=1,c,d,n;
float e=1;
printf("n=%d",n);
scanf("%f",&n);
for(a=0;a<=n;a++)
{
b=b*a;
a=a+1;
while(b>=1)
{c=1/b;
e=e+c;
}
}
printf("e=%f",&e);
return 0;
}
代码如上图所示,为什么最后运行出来的结果却是n=36呢?我没有定义n啊?
软件dev c++

  • 写回答

1条回答 默认 最新

  • 赵4老师 2022-04-21 15:22
    关注

    int a=0,b=1,c,d,n;//这里不是定义n了吗?
    定义而未赋值的局部变量的值是对应那块内存里原来的值

    评论

报告相同问题?

问题事件

  • 创建了问题 4月21日