已阅读5页,还剩1页未读, 继续免费阅读
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
一、if语句if(表达式) 语句1;如果表达式的值为非0,则执行语句1,否则跳过语句继续执行下面的语句。如果语句1有多于一条语句要执行时, 必须使用 把这些语句包括在其中, 此时条件语句形式为:if(表达式)语句体1,2,3;例如:if(x=0) y=x;if(a|b&c)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(yx)printf(Good);elseprintf(Bad);对于上述情况, Turbo C规定: else语句与最近的一个if语句匹配, 上例中的else与if(yx)相匹配。为了使else与if(x20|x20|x-10)if(yx)printf(Good);elseprintf(Bad);下面举几个例子:1.输入一个数,如果大于0,输出plus;如果是负数,输出negative;如果正好是0,则输出zero。main()float num;scanf(%f,&f);if(num0)printf(plusn);else if(num=0) y=x;else y=-x;printf(%fn,y);Trubo C 2.0把一些常用的功能都写好了,我们只需要使用就可。例如求绝对值的功能在C的库里面就有。看下面的:#include math.hmain()float x,y;scanf(%f,&x);y=fabs(x); /*求x的绝对值,然后赋值给y*/printf(%fn,y);这个程序和上面的程序完成的功能是一模一样的,都是求绝对值。可以看出,用下面这个方法比上面就要好一些。由于fabs()是一个函数,系统自带的,所以在使用它的时候,我们必须把它所在的库文件math.h包含在程序中,即程序最前面一行。类似的还有求开方sqrt(),求指数幂exp()等等,这些与数学方面有关的函数都在math.h里面。3.输入x,输出y,x和y满足关系:x-5 y=x;-5=x1 y=2*x+5;1=x=4 y=3*x-2;程序如下:main()float x,y;scanf(%f,&x);if(x-5)y=x;else if(-5=x&x1)y=2*x+5;else if(1=x&x4)y=x+6;elsey=3*x-2;printf(%fn,y);这里要说明两点:(1).-5=x&x1不能写成-5=x1;1=x&x4也不能写成1=x=y&x=z) printf(%ft,x);if(y=z) printf(%ft%fn,y,z); else printf(%ft%fn,z,y); else if(y=x&y=z) printf(%ft,y);if(x=z) printf(%ft%fn,x,z); else printf(%ft%fn,z,x); elseprintf(%ft,z);if(x=y) printf(%ft%fn,x,y); else printf(%ft%fn,y,x); 说明:这是一个典型的if语句嵌套结构,如果不使用括号,那么if和else的对应关系就乱了。switch-case语句在编写程序时, 经常会碰到按不同情况分转的多路问题, 这时可用嵌套if -else-if语句来实现, 但if-else-if语句使用不方便, 并且容易出错。对这种情况, Turbo C提供了一个开关语句。开关语句格式为:switch(变量)case 常量1:语句1或空;case 常量2:语句2或空;.case 常量n:语句n或空;default:语句n+1或空;执行switch开关语句时,将变量逐个与case后的常量进行比较,若与其中一个相等,则执行该常量下的语句,若不与任何一个常量相等,则执行default后面的语句。注意:1.switch中变量可以是数值,也可以是字符,但必须是整数。2.可以省略一些case和default。3.每个case或default后的语句可以是语句体,但不需要使用括起来。 例如:main()intx,y;scanf(%d,&x);witch(x)case 1:y=x+1;break; /*退出开关语句,遇到break才退出*/case 4:y=2*x+1;break;default:y=x-;break;printf(%dn,y);用开关语句编的程序一定可以用if语句做。那么在什么情况下需要用switch语句呢?一般在出现比较整的情况下或者能转化成比较整数的情况下使用。看下面的例子:例子:一个学生的成绩分成五等,超过90分的为A,80-89的为B,70-79为C,60-69为D,60分以下为E。现在输入一个学生的成绩,输出他的等级。(1).用if语句main()float num;char grade;scanf(%d,&num);if(num=90) grade=A;else if(num=80&num=70&num=60&num69) grade=D;else grade=E;printf(%c,grade);(2).用switch语句main()intnum;char grade;scanf(%d,&num);num/=10;switch(num)case 10:case 9:grade=A;break;case 8:grade=B;break;case 7:grade=C;break;case 6:grade=D;break;default:grade=E;break;printf(%c,grade);说明一点,
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2026湖南城市学院选拔国家公派出国教师2人备考题库含答案详解(模拟题)
- 2026北京师范大学宣城实验学校春季教师招聘20人备考题库及参考答案详解
- 2026湖南娄底冷水江市事业单位公开引进高层次和急需紧缺人才22人备考题库附答案详解(综合卷)
- 2026上海同济大学环境与可持续发展学院对外联络与事务管理岗位招聘1人备考题库及答案详解(夺冠)
- 2026广西钦州市钦北区贵台镇卫生院招聘4人备考题库及答案详解(考点梳理)
- 2026湖北宜化集团有限责任公司招聘228人备考题库含答案详解(完整版)
- 2026广东深圳高级中学(集团)北校区面向社会招聘初中信息技术教师1人备考题库含答案详解(b卷)
- 2026山东济宁学院招聘69人备考题库(博士-长期招聘)附答案详解(满分必刷)
- 2026福建福州市仓山区住房保障和房产管理局编外人员招聘1人备考题库及答案详解一套
- 2026年上半年四川眉山市青神县从服务基层项目等人员中考核招聘乡镇事业单位人员4人备考题库及答案详解参考
- 2026山东青岛日报报业集团(青岛日报社)招聘4人备考题库附答案详解(完整版)
- 2026年及未来5年市场数据中国翻译机构行业市场需求预测及投资规划建议报告
- 消化内科炎症性肠病诊疗规范与实践指南(2025版)
- 新生儿体位管理课件
- GB/T 20151-2026光度学CIE物理光度系统
- 雨课堂学堂在线学堂云《自然辩证法概论( 武汉科技大)》单元测试考核答案
- 【MOOC】电路基础-西北工业大学 中国大学慕课MOOC答案
- 统编版四年级下册道德与法治知识点归纳【全册】
- 个人所得税纳税记录
- 初中生简历模板-中考简历模板
- 篮球教案抢篮板球
评论
0/150
提交评论