问题
单项选择题
有以下程序段:
int k=0;
while(k=1)k++;
while循环执行的次数是( )。
A.无限次
B.有语法错,不能执行
C.一次也不执行
D.执行1次
答案
参考答案:A
解析: 本来while中的表达式应为k==1,而本题却为k=1,是赋值表达式而不是逻辑表达式。因此,编译器将其值一直认为是1,因此表达式一直为真,陷入无限次的循环。
有以下程序段:
int k=0;
while(k=1)k++;
while循环执行的次数是( )。
A.无限次
B.有语法错,不能执行
C.一次也不执行
D.执行1次
参考答案:A
解析: 本来while中的表达式应为k==1,而本题却为k=1,是赋值表达式而不是逻辑表达式。因此,编译器将其值一直认为是1,因此表达式一直为真,陷入无限次的循环。