条件表达式题

[复制链接]
查看11 | 回复4 | 2009-7-23 11:03:12 | 显示全部楼层 |阅读模式
? : 是一个表达式?之前是判断语句为真时执行?和:之间的为假时执行:之后的。a<b?a:c?c:d先判断 a<b是否为真,真,则取第一个?:之间的a值;假,则执行第一个:之后的语句,但后面是另一个?:表达式,那再判断一次。c?c:d先判断c是否为真,真,即非0,则执行c?c:d中?:之间的c;假,即0,则执行c?c:d中:后面的d。原题设int a=1,b=2,c=3,d=4;则条件表达式a<b?a:c?c:d的值为?先判断a<b是否成立,即a<b是否为真 ,按题意1<2为真,所以取a<b?a:c里的a,之后的无需判断。条件表达式a<b?a:c?c:d的值为 a , 因为a=1,所以a<...
回复

使用道具 举报

千问 | 2009-7-23 11:03:12 | 显示全部楼层
先判断a<b是否成立,成立则结果为a,不成立则继续判断c是否为真,为真则值为c,为假则值为da=1,b=2,a<b成立,所以值为1...
回复

使用道具 举报

千问 | 2009-7-23 11:03:12 | 显示全部楼层
条件?结果1: 结果2条件为真返回结果1否则返回 结果2a<b(条件) ? a(结果1):(c?c:d)(结果2)你说他为什么 总是1 明白了吧...
回复

使用道具 举报

千问 | 2009-7-23 11:03:12 | 显示全部楼层
如果a<b 则a<b?a:c?c:d的值为a除以c;否则为c除以d...
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

主题

0

回帖

4882万

积分

论坛元老

Rank: 8Rank: 8

积分
48824836
热门排行