C语言菜鸟的小问题

来源:百度知道 编辑:UC知道 时间:2024/07/06 23:48:10
有以下程序段, while 循环执行的次数是
int k=0;
while(k=1)
k++;

A)无限次 B) 有语法错,不能执行
C) 一次也不执行 D) 执行1次

A
k=1 把1赋值给k,k永远为1,为真值,死循环

选A

B .................有语法错误 我先改下 哈哈
while(k=1) //k=1 的时候才循环 然后k等于1吗?int k=0;所以一次不循环
不信 把下面程序编译看看
main()
{
int k=0;
while(k==1){/*上面有语法错误逻辑判断是== 不是 =*/
printf("循环我耶!");
k++;}
}//屏幕有字出来我就跳楼

。。。。。。。
楼上几位的回答让人汗颜。
答案是A啊
K=1是给K赋值1,这个表达式返回值就是1,即循环条件永远为正,死循环了。

靠!你们都学过C语言没有啊?
小弟,我给你讲!
首先我说答案是C!
解释“while(k=1)",k=1在这里只是一个判断表达式,就是说它的作用是要判断你的k的初始值是否等于1!而不是什么赋值!因为k的初始值是0而不是1,所以是假值!就是说while循环体就根本不进行的!
小弟的循环结构是学了没有啊?要好好的学习啊,学好了C语言,你学其他的语言就十分的容易了!

应该选A
k=1是赋值语句,相当于while(1),真,死循环!
不同于k==1