mshd.net
当前位置:首页 >> 设有程序段 int k >>

设有程序段 int k

你好,软件工程学生为你解答。 应该选C。 对于 int k=10;while(k==0) k--;while当满足条件时才进行循环,而k现在为10,条件是k为0, 不满足条件,所以不会进入循环,循环体内的语句不会执行。 程序段结束以后,k的值为10;

C C语言中没有逻辑变量,用0来表示假,非0表示真。赋值后k=0,那么条件为假,则跳出循环,即一次也不执行

while里面是是布尔值,只能说编译都不通过

while(k++

k++,k++,是逗号运算符,等价于k=k+2或k+=2 k=2,输出##2 k=4,输出##4 k=6,不满足循环条件,结束循环。 因此输出是##2##4 至于出现数字2、4,是因为输出语句中,在#后面有%d,后面是k,即输出k的值,第一次输出2,第二次输出4

k=1是赋值语句不是判断语句。 --x先减后使用结果,x==1时,!(--x)相当于 !0 为1,x==-2时 !(--x) 相当于 !(-3)为0.

这道题在于混淆条件 k=0和k==0,k=0是赋值语句,而k==0是逻辑判断语句。 while(k=0)==>while((k=0) != 0)==>while(0 !=0),这样看,条件永远都不成立 所以一次都不会执行。仔细看一下条件。

循环只执行一次.. do-while循环先运行while前面的语句...所以执行了一次k变成4,不符合条件,循环结束

A.无限次 #include int main(int argc, char *argv[]) { int k=0; while(k=1) { k++; printf("%d\n",k); }; return 0; } 你会发现一直输出:2 原因: k=1 是一条赋值语句,令 k 的值等于 1。语句 k = 1 的结果是 永远是 1 , while(k=1) = while(...

while(k=0)等价于while(0),所以选择C 其中k=0是赋值语句,整体表达式的值为0

网站首页 | 网站地图
All rights reserved Powered by www.mshd.net
copyright ©right 2010-2021。
内容来自网络,如有侵犯请联系客服。zhit325@qq.com