A股上市公司传智教育(股票代码 003032)旗下技术交流社区北京昌平校区

 找回密码
 加入黑马

QQ登录

只需一步,快速开始

© sl7s78s8 中级黑马   /  2014-7-25 21:30  /  1434 人查看  /  6 人回复  /   0 人收藏 转载请遵从CC协议 禁止商业使用本文

本帖最后由 sl7s78s8 于 2014-7-26 14:25 编辑

int a = 1,b =2,c = 4,d = 3;
if(a < b)
if(c<d) x = 1;
else
if(a < c)
if(b < d) x = 2;
else x = 3;
else x = 4;
else x = 5;
求x的值,我想知道这个怎么运算的,结构怎么看?


6 个回复

倒序浏览
本帖最后由 fantacyleo 于 2014-7-25 21:37 编辑

没有大括号的情况下,else和离它最近的未匹配else的if配对。其实你在任何一个ide里把代码粘贴一下就会得到自动缩进,看起来就清楚多了:
  1. int main(void)
  2. {
  3.         if(a < b)
  4.             if(c<d) x = 1;
  5.             else
  6.                 if(a < c)
  7.                     if(b < d) x = 2;
  8.                     else x = 3;
  9.                 else x = 4;
  10.         else x = 5;
  11. }
复制代码


回复 使用道具 举报 1 0
if-else遵守就近原则,先把格式改正确,结构自己看。
回复 使用道具 举报
{:2_31:}{:2_31:}{:2_31:}{:2_31:}{:2_31:}{:2_31:}
回复 使用道具 举报
这个格式没法看呀,需要修改一下格式,那样就可以看清格式了。
回复 使用道具 举报
fantacyleo 发表于 2014-7-25 21:34
没有大括号的情况下,else和离它最近的未匹配else的if配对。其实你在任何一个ide里把代码粘贴一下就会得到 ...

明白了。
回复 使用道具 举报
可以用switch语句,效率高
回复 使用道具 举报
您需要登录后才可以回帖 登录 | 加入黑马