
C语言程序设计 我是C语言初学者,这有一道程序设计的题,请高手们帮我解答一下,谢谢了
21)有以下程序#include<stdio.h>main(){intn=2,k=0;while(k++&&n++>2);printf("%d%d\n",k,n);}我看...
21)有以下程序
# include <stdio.h>
main()
{ int n=2,k=0;
while (k++ &&n++>2);
printf("%d %d\n",k,n);
}
我看程序的结果是 0 2 答案给的结果是1 2 请帮我分析并讲解一下,先谢谢了! 展开
# include <stdio.h>
main()
{ int n=2,k=0;
while (k++ &&n++>2);
printf("%d %d\n",k,n);
}
我看程序的结果是 0 2 答案给的结果是1 2 请帮我分析并讲解一下,先谢谢了! 展开
2个回答
2011-08-06
展开全部
程序的结果就是1 2
k为0
0&&?为0
n++>2不执行,n的值不变
因为k++,k为1
结果是1 2
k为0
0&&?为0
n++>2不执行,n的值不变
因为k++,k为1
结果是1 2
更多追问追答
追问
你好,问一下 0&&?为0什么意思 k=0,k++不是得1了么,不就是1&&n++>2了么,还有n++>2为什么不执行啊
追答
非零即真
&&是逻辑运算符,只有两边都为一才为真
k=0;
0&&0=0,0&&1=0
所以,n++>2不执行,n的值不变
k++是先用后加,你说的是++k,先加后用
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询