- 1、本文档共12页,可阅读全部内容。
- 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
C语言基础知识5---条件语句
条件表达示语句一、if语句if(表达式) 语句1;如果表达式的值为非0,则执行语句1,否则跳过语句继续执行下面的语句。如果语句1有多于一条语句要执行时, 必须使用{} 把这些语句包括在其中, 此时条件语句形式为: if(表达式){语句体1,2,3;}例如:if(x=0) y=x;if(a||bc) {z=a+b;c+=z;}if--else语句除了可以指定在条件为真时执行某些语句外,还可以在条件为假时执行另外一段代码。在C语句中利用else语句来达到这个目的。if(表达式) 语句1;else 语句2;同样,当语句1或语句2是多于一个语句时,需要用{}把语句括起来。例如:if(x=0) y=x;else y=-x;if--else if--else结构if(表达式1) 语句1; else if(表达式2) 语句2; else if(表达式3) 语句3; .else 语句n; 这种结构是从上到下逐个对条件进行判断,一旦发现条件满点足就执行与它有关的语句, 并跳过其它剩余阶梯;若没有一个条件满足,则执行最后一个else 语句n。最后这个else常起着缺省条件的作用。同样,如果每一个条件中有多于一条语句要执行时,必须使用{}把这些语句包括在其中。条件语句可以嵌套,这种情况经常碰到,但条件嵌套语句容易出错,其原因主要是不知道哪个if对应哪个else。例如: if(x20||x-10) if(y=100yx) printf(Good); else printf(Bad); 对于上述情况, Turbo C规定: else语句与最近的一个if语句匹配, 上例中的else与if(y=100yx)相匹配。为了使else与if(x20||x-10)相匹配, 必须用花括号。如下所示: if(x20||x-10){ if(y=100yx) printf(Good); } else printf(Bad); 下面举几个例子:1.输入一个数,如果大于0,输出plus;如果是负数,输出negative;如果正好是0,则输出zero。main(){float num;scanf(%f,f);if(num0)printf(plus\n);else if(num0)printf(negative\n);elseprintf(zero\n); }先定义两个变量,然后输入一个数,然后判断这个数的范围,输出对应的字符串。2.输入一个数x,输出y。其中y是x的绝对值。main(){float x,y;scanf(%f,x);if(x=0) y=x;else y=-x;printf(%f\n,y);}Trubo C 2.0把一些常用的功能都写好了,我们只需要使用就可。例如求绝对值的功能在C的库里面就有。看下面的:#include math.hmain(){float x,y;scanf(%f,x);y=fabs(x); /*求x的绝对值,然后赋值给y*/printf(%f\n,y);}这个程序和上面的程序完成的功能是一模一样的,都是求绝对值。可以看出,用下面这个方法比上面就要好一些。由于fabs()是一个函数,系统自带的,所以在使用它的时候,我们必须把它所在的库文件math.h包含在程序中,即程序最前面一行。类似的还有求开方sqrt(),求指数幂exp()等等,这些与数学方面有关的函数都在math.h里面。3.输入x,输出y,x和y满足关系:x-5 y=x;-5=x1 y=2*x+5;1=x4 y=x+6;x=4 y=3*x-2;程序如下:main(){float x,y;scanf(%f,x);if(x-5)y=x;else if(-5=xx1)y=2*x+5;else if(1=xx4)y=x+6;elsey=3*x-2;printf(%f\n,y);}这里要说明两点:(1).-5=xx1不能写成-5=x1;1=xx4也不能写成1=x4;在C语言中,不能认识连续不等式。(2).y=2*x+5不能写成y=2x+5;y=3*x-2也不能写成y=3x-2;这与我们平时所写的方法不一样。4.输入三个数x,y,z,然后按从大到小输出。main(){float x,y,z;scanf(%f%f%f,x,y,z);if(x=yx=z){printf(%f\t,x);if(y=z) printf(%f\t%f\n,y,z);else printf(%f\t%f\n,z,y);}else if(y=xy=z){printf(%f\t,y);if(x=z) printf(%f\t%f\n,x,z);else printf(%f\t%f\n,z,x);}else{printf(%f\t,z);if(x=y) printf(%f\t%f\n,x,y);else printf(%f\t%f\n,
文档评论(0)