看成了“等于”
题例:有以下程序段
int k=0
while(k=1)k++;
while 循环执行的次数是:
(A)无限次 (B)有语法错,不能执行
(C)一次也不执行 (D)执行1次
此题如果理解为k等于1时循环才执行,那么“k++”不被执行,k的值就始终为0,这时就把C选上了。其实,while循环的条件是一个赋值表达式,答案为A。
第三类,表达式的值
与变量的值
题例:有以下程序
int a=2;
int f(int a)
{return (a)++;}
main( )
{ int s=0;
{ int a=5;
s+=f(&&a);
}
s+=f(&&a);
printf("%d\n",s);
} 执行后输出结果是()
(A)10 (B)9 (C)7 (D)8
答案是C。
责任编辑:小草