c语言程序设计-分支-补充

上传人:ji****en 文档编号:110836533 上传时间:2019-10-31 格式:PPT 页数:74 大小:3.64MB
返回 下载 相关 举报
c语言程序设计-分支-补充_第1页
第1页 / 共74页
c语言程序设计-分支-补充_第2页
第2页 / 共74页
c语言程序设计-分支-补充_第3页
第3页 / 共74页
c语言程序设计-分支-补充_第4页
第4页 / 共74页
c语言程序设计-分支-补充_第5页
第5页 / 共74页
点击查看更多>>
资源描述

《c语言程序设计-分支-补充》由会员分享,可在线阅读,更多相关《c语言程序设计-分支-补充(74页珍藏版)》请在金锄头文库上搜索。

1、第2章 C语言程序设计基础,第2章 顺序结构和选择分支结构,基本数据类型和输入输出 输入生日并显示 汇率换算 字符加密 考核通过了吗? 顺序结构 计算圆的周长和面积 选择分支结构 判断数字的奇偶性(if) 今年是闰年吗? (if-else) 求解一元二次方程(if-else if) 四则运算(switch) 计算存款利息(switch) 可以构成三角形吗?(综合案例),本章要点,怎样编写程序,在屏幕上显示一些信息? 怎样编写程序,实现简单的数据处理? 什么是分支结构?它的作用是什么? switch 语句中的 break 起什么作用? 数据在内存中是如何存储的?,导例:输入生日并显示,1问题描述

2、 从键盘输入个人生日信息,并在屏幕上显示相应信息。 2问题分析 问题涉及到了输入和输出问题。 使用标准输入函数scanf( )接收键盘输入的信息, 使用输出函数printf()屏幕输出。 从键盘输入的信息要想输出到屏幕上,需要先将数据存储到内存空间保存起来,然后对其输出。因此需要定义一个变量用于保存键盘输入的数。在这里可以定义两个整型变量分别用于保存生日的月份和日期信息。,3. 算法描述 定义int变量month和day; 用printf( )在屏幕上显示提示信息“Enter the month and the day of your birthday:”; 用scanf( )从键盘输入生日月

3、份和日期,分别存储在变量month和day中; 用printf( )在屏幕上显示生日信息。,4. 程序实现 #include /*编译预处理命令*/ int main( ) /*定义了一个名字为main的函数*/ int month, day; /*定义两个整形变量month和day*/ printf(“Enter the month and the day of your birthday:“); scanf(“%d%d“, ,5. 运行结果,标准输入函数scanf(),函数scanf()的一般调用格式为: scanf (“”,地址列表) 格式说明符和地址列表在数量和类型上要一一对应。 in

4、t型 :%d float型:%f double型:%lf 例如: int month, day scanf(“%d%d“, “%d%d”是格式控制字符串 %d和%f是格式说明符 &是地址符,& month表示变量month的存储地址。,注意:普通字符:原样输入 尽量不要出现普通字符 例如: scanf(“%lf“, ,输入: 9.5,输入: 9,5.2,7,输入: 9;5;7,输入: 9-5-7,输入: x=9 y=5 z=7,标准输出函数printf(),函数printf()的一般调用格式为: printf(“”,输出列表) 在函数printf()中的格式控制字符串中还可以包含普通字符,在显

5、示中起到提示作用。 例如: printf(“ Your birthday is :%d月%d日n”, month, day); printf()的输出参数也要和格式说明符一一对应。 int型 :%d float double型:%f,C程序的基本结构,2.2基本数据类型与基本输入输出,变量的定义,变量定义的一般形式: 类型名 变量名表; 例如: int month, day; /定义整型变量 float x; /定义单精度浮点型变量 double area, length; /定义双精度浮点型变量 double型数据比float精度高,取值范围大,变量名:小写字母;见名知义,变量的定义,定义变

6、量时要指定变量名和数据类型 类型名 变量名表; int month, day; float x; double area, length; 变量名代表内存中的一个存储单元 存放该变量的值 该存储单元的大小由变量的数据类型决定 C语言中的变量代表保存数据的存储单元 数学中的变量代表未知数 x = x+1,变量的定义与使用,#include int main(void) float math, computer,total; printf(“Enter your score:“); scanf(“%f%f“, ,一个变量名只能定义一次 变量一般都定义在程序的开头,应该先赋值,后引用,变量必须先定义

7、,后使用。,导例:汇率换算,1问题描述 假设人民币对美元的汇率是0.1642,计算用户输入的人民币值可以兑换多少美元。 2问题分析 人民币兑换美元的计算公式为:dollar=rmbrate 3. 算法描述 确定汇率,rate=0.1642; 接收用户输入的人民币值,将其赋值给rmb; 计算公式:dollar = rmb *rate; 屏幕输出结果。,图2-1汇率换算流程图,4. 程序实现 #include main( ) int rmb; /*定义整型变量,存放人民币值*/ float rate; /*定义单双精度浮点型变量,存放汇率值*/ float dollar; /*定义单精度浮点型变量

8、,存放美元值*/ rate=0.1642; /*对变量rate赋值*/ printf(“rmb=“); scanf(“%d”, /*调用printf()函数输出结果*/ ,输入rmb,输出结果,表2-5 常用的格式说明符,printf()函数有一些附加格式说明符,可用于修饰格式说明符,格式为:%m和%m.n。 如 “%.2f”中的“.2”表示输出2位小数; “%.2s”,则表示只输出字符串的前两个字符; “%-10.2f”表示该变量一共占10位,包括整数部分、小数点和小数点后位数,且小数点后只能保留2位,“-”表示采用左对齐方式。,练习1:题目要求 输入整数a和b,计算并输出a、b的和与差。

9、测试结果(输入结束回车符用表示) (1)输入:2 8 输出: The sum is 10 2- 8= -6 (2)输入:-4 10 输出: The sum is 6 -4 - 10 = -14,导例:字符加密,1问题描述 输入字符,为其加密。 2问题分析 加密是保证信息安全的常用方法。选用一种最简单的方式,就是字符变换,变换方式为:字母转换为其后第三个字母,a变为d,b变为e,c变为f。 3. 算法描述 接收用户输入的一个字符,将其赋值给ch; 进行字符变换; 屏幕输出加密结果.,4. 程序实现 #include main () char ch; /*定义一个字符变量ch*/ ch=getch

10、ar(); /*调用getchar()函数,从键盘上输入一个字符,赋值给ch*/ ch=ch+3; /*为字符ch加密 */ putchar(ch); /*调用putchar()函数,输出加密后的ch*/ putchar(n); /*输出回车换行符*/ ,图2-2为字符加密流程图,输入ch,输出ch,单字符输入/输出,单字符输入函数getchar()的一般调用格式为: getchar(); getchar()函数为单个字符的输入函数,通常把输入的字符赋值给一个字符变量,构成赋值语句。 例如:ch=getchar();,单字符输出函数putchar()的一般调用格式为: putchar(ch);

11、 其中ch是一个字符变量或者常量,也可以是一个ASCII码值(不大于255的整数)。例如: putchar(T); /*输出一个字符T,是一个字符常量*/ putchar(100); /*输出一个ASCII值是100的字符,即d*/ putchar(n); /*输出一个转义字符,即换行符*/,输入输出字符,scanf() 和 printf() %c char ch; scanf(“%c“, 输入输出一个字符,输入输出字符示例,# include int main(void) char ch1, ch2; ch1=getchar(); ch2=getchar(); putchar(ch1); p

12、utchar(#); putchar(ch2); return 0; ,Ab A#b,输入输出字符示例,# include int main(void) char ch1, ch2, ch3; scanf(“%c%c%c“, ,AbC A#b#C,A bC A# #b,字符运算,大小写英文字母转换 b - a = B - A z - a = Z - A m M,m- M M- m,m - a + A = M M - A + a = m,8 - 0 = 8 8 + 0 = 8,数字字符和数字转换 9 - 0 = 9 - 0 9 = 9 + 0 8 8,8-8 8-8,练习2:题目要求 输入一个大

13、写英文字母,输出相应的小写字母。 测试结果(输入结束回车符用表示) (1)输入:G 输出:g (2)输入:H 输出:h,导例:考核通过了吗?,1问题描述 给出三项考核成绩,判定单项考核和综合考核是否通过。 2问题分析 假如考核通过标准线是60分,将考核成绩与60进行比较,即可判定该项考核是否通过。如果每项考核成绩都大于等于60分,则判定综合考核通过;否则不通过。 3. 算法描述 接收用户输入的三项考核成绩,存入成绩变量中score1、score2、score3; 将各项成绩与60进行比较,输出比较结果。,4. 程序实现 #include main () int score1,score2,sc

14、ore3; /*定义各项考核成绩变量*/ /*输入考核成绩*/ printf(“请输入三项考核成绩:“); scanf(“%d%d%d“, ,图2-3考核结果判断流程图,输入score1, score2, score3,输出与60的比较结果,运算符与表达式,算术运算符 算术运算符用于各种数值运算,包括5个二元运算符:加(+)、减(-)、乘(*)、除(/)、求余(%),和2个一元运算符:自增(+)、自减(-)。 例如: 34+23、23.4-32、54.3*3、80.1/4、100%34 如果定义如下变量并赋值: int x; float y; x = 30;y = 53.64; x+y、x*y

15、、x/23.5,注意 / 整数除整数,得整数 如:1/2 0,9/4 2 % 针对整型数据 如: 565,941,10040 双目运算符两侧操作数的类型要相同,运算符与表达式,使用自增(+)、自减(-)这两个一元运算符的运算只需一个操作数,一般用于整型变量的加1、减1操作。 例如 int x;float y; x = 30;y = 53.64; x+ x的值加1,变为31。 (x+)+y x先与y相加,然后x再加1,表达式结果为83.64; (+x)+y x先加1,然后再与y相加,结果为84.64。,运算符与表达式,关系运算符 关系运算符用于比较运算,包括6个运算符: 大于()、小于(=)、 小于等于(=)、等于(=)和不等于(!=)。 这6个逻辑运算符运算结果为逻辑值:1或0 当条件成立时为真,结果为1; 当条件不成立时为假,结果为0。,区分=和=,运算符与表达式,逻辑运算符 逻辑运算符用于逻辑运算,包括3个运算符: 非(!)、与(&)、或(| ) 逻辑运算的结果均为逻辑值:1或0。,运算符的优先级,在运算表达式中 算术运算符关系运算符逻辑运算符,例1:int a = 7 , b = 2; a / b = ? a % b = ?,例2:对于给定的三位正整数,分离出各位数字。,如:618 分离个位数字: 分离十位数字:

展开阅读全文
相关资源
正为您匹配相似的精品文档
相关搜索

最新文档


当前位置:首页 > 电子/通信 > 综合/其它

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