下面的 C++ 代码执行之后的输出是( )。
int i;
for (i = -2; i < 2; i++)
if (not i % 3 == 0)
cout << i << "#";
cout << i;
- A. -2#-1#1#2
- B. -2#-1#1#2#3
- C. 1#2#3
- D. 0#1#2#3
正确答案:A
int i;
for (i = -2; i < 2; i++)
if (not i % 3 == 0)
cout << i << "#";
cout << i;
正确答案:A
not 优先级高于 %,not i % 3 == 0 实为 ((!i) % 3) == 0。i 非 0 时 !i=0、0%3=0、==0 成立则打印;i=0 时 !0=1、1%3=1、不成立跳过。故 i=-2、-1、1 打印 -2#-1#1#,循环结束 i=2 再输出 2,合为 -2#-1#1#2,选 A。💡 not(即 !)是单目运算符,优先级高于乘除模。想系统刷完 GESP C++ 1~8 级真题,并查看每道题的逐题精讲?
进入 GESPPASS 开始练习