c语言中if(a<b)t=a;a=b;b=t; if(a<b){t=a;a=b;b=t;}两个的区别

[复制链接]
查看11 | 回复3 | 2018-2-28 14:35:19 | 显示全部楼层 |阅读模式
if语句如果没有大括号默认只有一个跟随语句;也就是说在你的第一个例子中,if语句成立 则t=a;会被执行,而a=b;b=t;什么情况下都会被执行。而第二个例子中加了大括号,被认为是一个整体,所以if的判断条件成立与否决定了大括号里面的所有语句的执行与否。...
回复

使用道具 举报

千问 | 2018-2-28 14:35:19 | 显示全部楼层
没有大括号,if成立的话,就执行t=a;这条语句,然后执行a=b;b=t;有大括号,if成立的话,则执行){t=a;a=b;b=t;}这的内容。...
回复

使用道具 举报

千问 | 2018-2-28 14:35:19 | 显示全部楼层
前一个是第一个分号结束,后者是运行大括号里边的...
回复

使用道具 举报

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

本版积分规则

主题

0

回帖

4882万

积分

论坛元老

Rank: 8Rank: 8

积分
48824836
热门排行