厦门大学非计算机专业本科生公共课

上传人:ldj****22 文档编号:37651359 上传时间:2018-04-20 格式:PDF 页数:37 大小:428.25KB
返回 下载 相关 举报
厦门大学非计算机专业本科生公共课_第1页
第1页 / 共37页
厦门大学非计算机专业本科生公共课_第2页
第2页 / 共37页
厦门大学非计算机专业本科生公共课_第3页
第3页 / 共37页
厦门大学非计算机专业本科生公共课_第4页
第4页 / 共37页
厦门大学非计算机专业本科生公共课_第5页
第5页 / 共37页
点击查看更多>>
资源描述

《厦门大学非计算机专业本科生公共课》由会员分享,可在线阅读,更多相关《厦门大学非计算机专业本科生公共课(37页珍藏版)》请在金锄头文库上搜索。

1、C语言程序设计厦门大学计算机科学系林子雨2012-03-182012-03-18厦门大学非计算机专业本科生公共课(2011-2012第2学期)C语言程序设计C语言程序设计林子雨厦门大学计算机科学系林子雨厦门大学计算机科学系E-mail: 个人主页:个人主页:http:/ 第一章 绪论第一章 绪论? 第二章第二章 C语言基础语言基础? 第三章 结构化程序设计第三章 结构化程序设计? 第四章 选择结构第四章 选择结构? 第五章 循环结构程序设计第五章 循环结构程序设计? 第六章 函数第六章 函数? 第七章 编译预处理第七章 编译预处理? 第八章 数组第八章 数组? 第九章 结构体、共用体和枚举类型

2、第九章 结构体、共用体和枚举类型? 第十章 指针第十章 指针C语言程序设计厦门大学计算机科学系林子雨2012-03-18第4章 选择结构 4.1 关系运算符和关系表达式关系运算符和关系表达式 4.2 逻辑运算符及逻辑表达式逻辑运算符及逻辑表达式 4.3 if语句语句C语言程序设计厦门大学计算机科学系林子雨2012-03-184.1 关系运算符和关系表达式 或称为“比较运算符”,用来比较 两个值,以判断其比较结果是否 成立,隐含“是否”的意思 C语言提供6个关系运算符: 4个比较两个值大小关系:、=、 void main() int x=0;/修改x的值为1或8 printf(“!x=%dn“,

3、!x); if(x) printf(“x为非零n“); else printf(“x为零n“); if(!x) printf(“x为零n“); else printf(“x为非零n“);C语言程序设计厦门大学计算机科学系林子雨2012-03-184.1 关系运算符和关系表达式 由关系运算符将两个表达式连接起来的表达式 xy、(x=5)2*c的值为0(假) (2)关系表达式b!=B的值为1(真) 注意:表达式连续使用的正确含义,比如:03 x=2; printf(“%d “, 0 printf(“x=%d “, x); printf(“%d “, A printf(“x=%d “, x); y=

4、2; printf(“%d “, 0 | (y=8); printf(“y=%d “, y); printf(“%d “, 0 | (y=8); printf(“y=%dn“, y); 运行结果是: 0 x=2 1 x=6 1 y=2 1 y=8C语言程序设计厦门大学计算机科学系林子雨2012-03-184.3 if语句 4.3.1 if语句(单分支) 4.3.2 ifelse语句(双分支) 4.3.3 if语句的嵌套 4.3.4 ifelse if语句(多分支) 4.3.5 条件运算符和条件表达式 4.3.6 实例C语言程序设计厦门大学计算机科学系林子雨2012-03-184.3.1 if语

5、句if语句的语法形式为: if(表达式)(表达式) 语句语句 语义:如果表达式的值不等于0 (称条件为真),则执行“语 句”,否则“语句”不被执行。 if 语句中的表达式就是条件,语 法规定,表达式必须加括号。 表达式后的语句称为内嵌语 句,可以是任意C合法语句。表达式内嵌语句非0(“真”)0(“假”)C语言程序设计厦门大学计算机科学系林子雨2012-03-184.3.1 if语句例:从键盘输入一个整数,如果小于60则输出该数,否则不输出。#include void main() int a; printf(“Please enter one integer:”); scanf(“%d“, i

6、f(a void main() int a,b,t; printf(“Please enter two integers:”); scanf(“%d%d“, if(ab)t=a;a=b; b=t; /注意加大括号 printf(“%dt%dn“,a,b ); C语言程序设计厦门大学计算机科学系林子雨2012-03-184.3.1 if语句例:输入一个整数,如果在5659之间,则输出该数。 #include void main() int a; printf(“Please enter one integer:”); scanf(“%d“, if(a=56 printf(“Please ente

7、r one integer:”); scanf(“%d”, if( a=90) printf(“a=%dn“,a); C语言程序设计厦门大学计算机科学系林子雨2012-03-184.3.2 ifelse语句表达式内嵌语句1内嵌语句2非00if(表达式) 语句1 else 语句2 语义:如果表达式的值非0,则执 行“语句1”,否则执行“语句2”。C语言程序设计厦门大学计算机科学系林子雨2012-03-184.3.2 ifelse语句例:输入两个整数,输出其中的较大者。程序2: main() int a ,b ; printf(“Enter two integers:”); scanf(“%d%d

8、“, if (ab)printf(“max=%dn“,a); elseprintf(“max=%dn“,b); 程序1: #include main() int a ,b ,max ; printf(“Enter two:”); scanf(“%d%d”, if (ab) max=a; else max=b; printf(”max=%dn”,max); C语言程序设计厦门大学计算机科学系林子雨2012-03-184.3.3 if语句的嵌套在ifelse语句的语法中,语句1和语句2可以是任何可执行语句,当 然也可以是if 语句。这就是if 语句的嵌套。通过if 语句的嵌套,可以表示多分支结构,

9、例如:形式1: if(表达式1) if(表达式2) 语句1 else 语句2形式2: if(表达式1) if(表达式2) 语句1 else 语句2 else 语句3形式3: if(表达式1) if(表达式2) 语句1 else 语句2 else if(表达式3) 语句3 else 语句4C语言程序设计厦门大学计算机科学系林子雨2012-03-184.3.3 if语句的嵌套由于if语句的嵌套很容易令人混淆,要特别注意if与else的配对关系。 为了避免二义性,C语句规定,else总是与它上面最近的一个未配对 的if配对if(表达式1) if(表达式2) 语句1 else if(表达式3) 语句2

10、 else语句3if(表达式1) if(表达式2) 语句1 else if(表达式3) 语句2 else语句3if(表达式1) if(表达式2) 语句1 else if(表达式3) 语句2 else语句3建议书写 (加大括号)错误理解实际执行C语言程序设计厦门大学计算机科学系林子雨2012-03-184.3.3 if语句的嵌套例例4.3.7 阅读下面的程序,注意阅读下面的程序,注意else配对问题并分析其执行 结果。配对问题并分析其执行 结果。 #include main( ) int x=4; if( x6 ) if( x void main() float x,y; printf(”输入购

11、买金额:”); scanf(“%f ”, if(x=1000) y=0.8*x; else if(x=500) y=0.9*x; else y=x; printf(”实际支付金额为:%fn”,y); C语言程序设计厦门大学计算机科学系林子雨2012-03-184.3.3 if语句的嵌套例:某商场进行打折销售,如顾客一次购买商品500元999元按9折结 算,如一次购买商品1000元以上,则按8折结算。已知某顾客的采购金 额,求该顾客的实际支付金额。程序2 #include void main() float x,y; printf(“输入购买金额:“); scanf(“%f“, if(x=500

12、) if (x=1000) y=0.8*x; elsey=0.9*x; elsey=x; printf(“实际支付金额为:%fn“,y); C语言程序设计厦门大学计算机科学系林子雨2012-03-184.3.4 ifelse if语句if (表达式1) 语句1; else if(表达式2) 语句2; else if(表达式3) 语句3; else if(表达式n) 语句n; else 语句n+1;表达式1语句1非0表达式20语句2非0表达式n0语句n非00语句n+1C语言程序设计厦门大学计算机科学系林子雨2012-03-184.3.4 ifelse if语句例例4.3.10 编一程序,由键盘输

13、入字符,然后显示该字符是否是一个数 字字符、大写字母、小写字母、一个空格或其它字符。编一程序,由键盘输入字符,然后显示该字符是否是一个数 字字符、大写字母、小写字母、一个空格或其它字符。 #include main( ) char c; printf(“Press a character Key:“); c=getchar(); printf(“nCharacter %c is “,c); if(c=0 scanf(“d“, /如果是闰年执行此句 else printf(“%d is not a leap year.n“,year); /否则,执行此句 C语言程序设计厦门大学计算机科学系林子雨2012-03-184.3.5 条件运算符和条件表达式条件运算符的优先级和结合性 条件运算符的优先级高于赋值运算符,但是低于关系运算符和算术运算符。结合 性是自右向左 ad?c:d相当于ad?c:d) 条件表达式 表达式1?表达式2:表达式3 求值顺序:先计算表达式1,若其值非0(真),则计算表达式2,并将表达式2 的值作为条件表达式的值,否则,才计算表达式3,并将其值作为表达式的值。 例如: (1)x0?1:-1就是一个条件表达式 (2)min=x void main() int n, d; printf(“Enter two positive integers: “);

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 行业资料 > 其它行业文档

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号