c语言while循环的问题

int a;

while(a)
{}

是不是只要a不等于0 它就能循环

while循环是对while括号后面的表达式进行真假的判断,,比如你用的a,C语言中有这样的规定,如果a=0;那么a 表达的就是假,如果a不为0,那么他表示的是真,因此,上面的循环,只要a不等于0,那么循环就一直进行
刚开始学的时候,我一直以为,只有在等于1的时候才是真,等于2他就不能循环了,其实那是错的,编译器判断真假条件的标准是他等不等于0,而不是等不等于1,楼主记住了哦~
还有就是,如果楼主的意愿是让a=0的时候退出循环,那么就可以按照你写的方法进行,如果楼主的意愿是让a=0的时候才循环,那么有2种写法
while(!a)
{
//对a进行非操作
}
还有就是
while(0==a)
{}
建议写成0== a 的形式,其实0==a,和a==0实质是一样的,但是如果你讲0==a,写成了0=a,那么编译器会报错,而将 a==0写成a=0编译器是不会报错的,可以减少风险。
祝你进步!!
温馨提示:答案为网友推荐,仅供参考
第1个回答  推荐于2017-09-21
while的语法为
while(表达式)

。。。

当表达式不为0的时候,则会执行下面语句体里面的语句
直到表达式为0才会停止
while语句一般用在死循环里面
所以常规的用法是while(1)
如果要指定循环次数,更多的是用for语句。
第2个回答  2011-04-27
C语言,默认给a的值是个0,0就是假,循环一次都不执行,在C中非真就是假
第3个回答  2011-04-27
是滴,如果没有明确说明这就是默认状态为真时运行
第4个回答  推荐于2018-08-17
意思是如果a 为真,则执行while中的循环体!
(a)为循环条件!但是个死循环!因为没有办法确定a 的值为真还是为假!
写个例子吧!
int a=0;
while(a<5)
{
a++;
printf("%d",a);
}

当a=0时,判断a<5为真!执行循环体!
这个循环体共执行5次!即执行5次a++
可以运行一下看看每次都是什么效果!可能能加深你对循环的理解!
希望对你有帮助!本回答被网友采纳
相似回答