逻辑运算符和关系运算符int n=2,k=0;while (k++&&n++>2);printf("%d %d\n",k,n);结果是?请分析比较运算的过程!是不是按下面顺序来计算?1、(k++)和(n++)2、>3、&&结果是:1 好像不对呢 我现在疑惑的是运算

来源:学生作业帮助网 编辑:六六作业网 时间:2024/11/17 07:18:53
逻辑运算符和关系运算符intn=2,k=0;while(k++&&n++>2);printf("%d%d\n",k,n);结果是?请分析比较运算的过程!是不是按下面顺序来计算?1、(k++)和(n++

逻辑运算符和关系运算符int n=2,k=0;while (k++&&n++>2);printf("%d %d\n",k,n);结果是?请分析比较运算的过程!是不是按下面顺序来计算?1、(k++)和(n++)2、>3、&&结果是:1 好像不对呢 我现在疑惑的是运算
逻辑运算符和关系运算符
int n=2,k=0;
while (k++&&n++>2);
printf("%d %d\n",k,n);
结果是?
请分析比较运算的过程!是不是按下面顺序来计算?
1、(k++)和(n++)
2、>
3、&&
结果是:1 好像不对呢
我现在疑惑的是运算符的优先级按照书上的应该是++、>、&&,实际运算是按这个顺序来算的吗?

逻辑运算符和关系运算符int n=2,k=0;while (k++&&n++>2);printf("%d %d\n",k,n);结果是?请分析比较运算的过程!是不是按下面顺序来计算?1、(k++)和(n++)2、>3、&&结果是:1 好像不对呢 我现在疑惑的是运算
我还是解释一下吧:
&&只要有一个操作数是错的,那么就不要要执行第二个操作的判断了!
根据题目:
int n=2,k=0;
while (k++&&n++>2);
printf("%d %d\n",k,n);
首先判断k++&&n++中的,k++,是后加运算符,我们用到k的值还是0,用好的K的值才是1,此时k++&&n++的值就是0 了,n++根本就没有运算,所以输出的是 1 2
测试:
#include
int main()
{
int n=2,k=0;
while (k++&&n++>2);
printf("%d %d\n",k,n);
return 0;
}
结果:
1 2
Press any key to continue