if (a<B)
if (c<D) x=1;
else
if (a<c)
if (b>D) x=2;
else x=3;
else x=6;
else x=7;
// 我觉得应该都是7,因为不管b、c、d是啥,只要使a<B不成立,那么x=7,中间的代码都不执行了
程序段 int k=0; while(k=1) k++; while循环体执行的次数为无限次。
理由:在执行while(k=1)时,会先执行赋值语句,令 k 的值等于 1,然后再判断while的循环条件,此时 while(k=1)相当于 while(1),循环条件始终为真,无限循环执行。
再举一个与上面条件差不多的例子:
#include <stdioh>
int main(int argc, char argv[])
{
int k=0;
while(k=1)
{
++k;
printf("%d\n",k);
};
return 0;
}
控制台会不断输出2,如下图:
扩展资料:
do-while循环语句
一般形式如下:do 语句; while(表达式);
for循环语句
一般形式如下:for ( [表达式 1]; [表达式 2 ]; [表达式3] )
其中:
表达式1:一般为赋值表达式,给控制变量赋初值;
表达式2:关系表达式或逻辑表达式,循环控制条件;
表达式3:一般为赋值表达式,给控制变量增量或减量;
语句:循环体,当有多条语句时,必须使用复合语句。
参考资料:
是的,
非零即真
(a && b) 中 a 和 b 都不为 0 。所以 a && b 为 true即1;
字符 ‘A’对应的ASCII码 小于 ‘B’ 的ASCII码 所以 也为 1;
转换为 int 的话。true 就返回 1。 false 返回 0。
所以 x = 1
刚刚去查了查,] a=14,b=15,第一个&&两侧均为非零值。c='A',表达式c<'B'的值为真即1,第二个&&两侧也均为非零值。表达式 (a&&b)&&(c<'B')的值为1,赋值给变量x。
以上就是关于C语言编程问题。有如下程序段:全部的内容,包括:C语言编程问题。有如下程序段:、有以下程序段 int k=0; while(k=1) k++; 则while循环执行的次数是、1有如下程序段: int a=14,b=15,x; char c='A'; x=(a&&b)&&(c<'B'); 执行该程序段后,x的值为______等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)