问题 单项选择题

设有以下程序段:
int x=0,s=0;
whUe( ! x! =0) s+ = ++x;
printf("%d",s);
则( )。

A) 运行程序段后输出0
B) 运行程序段后输出1
C) 程序段中的控制表达式是非法的
D) 程序段执行无限次

答案

参考答案:B

解析: 本题中,逻辑非“!”运算符比不等于“! =”运算符优先级高,因此第一次循环时 !x!=0的运算结果为真,s的运算结果为1;第二次循环时!x!=0的运算结果为假,循环结束,输出s的结果为1。

名词解释
问答题 简答题