c语言,一个小问题..

来源:百度知道 编辑:UC知道 时间:2024/05/02 20:31:19
书里讲到if语句的第3种形式时,举了这么个例子
if(number>500) cost=0.15;
else if(number>300) cost=0.10;
else if(number>100) cost=0.075;
else if(number>50) cost=0.05;
else cost=0;

恩,我不明白的是.从第2个if开始的表达式,这里的number>300是指300到500的范围还是只要>300的数.包括下面的number>100,是指100到300的范围还是??
谢谢
恩..谢谢.补充个问题,呵呵..
实现a和b的互换,书里是这么写的
if(a>b)
{t=a;a=b;b=t;}
而我自己编写的时候是:
if(a>b)
{t=a,a=b,b=t}
就是分号和逗号的问题..我想问下在这里为什么要用分号?是什么原因? 谢谢..

300<number<=500,第三个100<number<=300,第四个50<number<=100,最后一个else number<=50
每条语句结束都要用分号,{t=a;a=b;b=t}是三条语句,如果每条语句写一行,
{
t=a;
a=b;
b=t;
}
就容易理解了。
逗号在C里是运算符,不能用作语句的结束标志

第二个IF是300到500
第三个IF是100到300
第四个IF是50到100
第五个IF是50以下的

C语言语句是一句一句执行的,第一个已经判断了,如果大于500就cost=0.15;

如果不大于500,就继续判断下面的else if(number>300) cost=0.10;

那不是有else嘛,看到了吧;
if(number>500)代表大于500
else if(number>300 else当然就代表小于500了,然后再加上个条件>300,下面的依此类推,你好好分析下else什么意思就知道了.(肯定是与上面的if的情况相反了)懂了吧.

无语了,在C里分号表示的是一个语句结束
在编译的时候看到分号后就编译已经读入的代码,C里没有用到逗号的地方

第二个IF是300到500
第三个IF是100到300
第四个IF是50到100

只有一句话 注意 !