永发信息网

已知X=12Y=10执行Y==X>12?X+1:X-1 Y=?

答案:2  悬赏:30  手机版
解决时间 2021-04-01 08:54
  • 提问者网友:人生佛魔见
  • 2021-04-01 03:51
已知X=12Y=10执行Y==X>12?X+1:X-1 Y=?
最佳答案
  • 五星知识达人网友:煞尾
  • 2021-04-01 04:34
Y的值为 10 ;
这个 原形 是 表达式1?表达式2:表达式3 ;
先运算 表达式1 若成立 执行 表达式2 否则 执行 表达式3 ;
在这里 先执行 Y==X>12 由于 运算符 > 等级高于 == 所以 先判断 X>12 为假 既表达式值为:0 , 在看 Y==0 为假 所以 Y==X>12 不成立 执行 表达式3 既 X-1;所以 表达式的结果,既 Y==X>12?X+1:X-1 的结果 为 11 ;
但是 这里没有对 Y 的值进行修改,所以 Y 的值不变。
全部回答
  • 1楼网友:渊鱼
  • 2021-04-01 04:47
写程序不要写成这样,你想表达什么意思就写成什么样:
如:((Y==X)>12)? (X+1):(X-1))
记住,写程序要易读。多用括号,避免记忆运算符优先级。那些雕虫小技确实没有啥意思。追问我是照抄课本呀追答#include "stdafx.h"
int main(int argc, char* argv[])
{
int X=12,Y=10;
Y==X>12?X+1:X-1;
printf("y=%d\n",Y);
return 0;
}
//输出:y=10
你最好上机试试;
#include "stdafx.h"
int main(int argc, char* argv[])
{
int X=12,Y=10;
Y=X>12?X+1:X-1;
printf("y=%d\n",Y);
return 0;
}
//输出:y=11
我要举报
如以上回答内容为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
点此我要举报以上问答信息
大家都在看
推荐资讯