有以下程序 #inc1ude void main() { int n=2,k=1; while(!(k>0||n++)); printf("%d %d\n",k,n); } 程序运行后的输出结果是(

admin2021-06-15  17

问题 有以下程序
    #inc1ude
    void main()
    { int n=2,k=1;
    while(!(k>0||n++));
    printf("%d  %d\n",k,n);
  }
    程序运行后的输出结果是(    )。

选项 A、0  2
B、1  3
C、5  7
D、1  2

答案D

解析 在程序中整型变量n的初始值等于2,整型变量k的初始值等于1,在执行while语句时,由于表达式k的值大于0为真,所以不再需要判断“n++”是否为真,“(k>0||n++)”表达式的值为真。“!(k>0||n++)”表达式的值为假,所以while语句中的条件不满足,循环语句不会执行,变量n的值也不会加1,所在输出变量k和n的值是1和2。
转载请注明原文地址:https://kaotiyun.com/show/Ngtp777K
0

最新回复(0)