C语言程序设计 教学课件 ppt 作者 陆蓓 主编 龙之一 易幼庆 赵建锋 副主编 郑 宁 主审 《C语言程序设计》第三章

上传人:E**** 文档编号:89190768 上传时间:2019-05-21 格式:PPT 页数:97 大小:1.94MB
返回 下载 相关 举报
C语言程序设计 教学课件 ppt 作者 陆蓓 主编 龙之一 易幼庆 赵建锋 副主编 郑 宁 主审 《C语言程序设计》第三章_第1页
第1页 / 共97页
C语言程序设计 教学课件 ppt 作者 陆蓓 主编 龙之一 易幼庆 赵建锋 副主编 郑 宁 主审 《C语言程序设计》第三章_第2页
第2页 / 共97页
C语言程序设计 教学课件 ppt 作者 陆蓓 主编 龙之一 易幼庆 赵建锋 副主编 郑 宁 主审 《C语言程序设计》第三章_第3页
第3页 / 共97页
C语言程序设计 教学课件 ppt 作者 陆蓓 主编 龙之一 易幼庆 赵建锋 副主编 郑 宁 主审 《C语言程序设计》第三章_第4页
第4页 / 共97页
C语言程序设计 教学课件 ppt 作者 陆蓓 主编 龙之一 易幼庆 赵建锋 副主编 郑 宁 主审 《C语言程序设计》第三章_第5页
第5页 / 共97页
点击查看更多>>
资源描述

《C语言程序设计 教学课件 ppt 作者 陆蓓 主编 龙之一 易幼庆 赵建锋 副主编 郑 宁 主审 《C语言程序设计》第三章》由会员分享,可在线阅读,更多相关《C语言程序设计 教学课件 ppt 作者 陆蓓 主编 龙之一 易幼庆 赵建锋 副主编 郑 宁 主审 《C语言程序设计》第三章(97页珍藏版)》请在金锄头文库上搜索。

1、第三章 数据的使用,主要内容,应用实例,1,输入与输出,2,运算符和表达式,3,数据类型转换,4,本章要点,基本输入输出操作的实现 常用运算符(算术运算符、赋值运算符、自增自减运算符、逗号运算符) 运算符的优先级和结合性 表达式及表达式语句 数据类型转换,本章学习目标,熟练掌握字符的输入/输出函数及格式化输入/输出函数的使用方法。 重点掌握scanf函数和printf函数的格式控制 掌握常用的运算符和表达式的使用,重点掌握自增和自减运算符及其运算规则 掌握表达式语句的格式,理解表达式与表达式语句的区别 掌握数据类型转换方法及规则,3.1 应用实例,【例3-1】计算商品总价格 某顾客到超市购买苹

2、果和桔子,超市收银台计算客户购买商品的总价格。,3.1.1程序代码,/*程序3-1*/ #include void main() float apple_price,orange_price,apple_qty,orange_qty,total_price; printf(“请输入顾客购买的苹果的价格和数量:“); scanf(“%f%f“, ,3.2 输入与输出,C语言标准函数库提供了用于实现输入/输出的库函数。 字符输入/输出的函数getchar函数和putchar函数 格式化输入/输出函数scanf函数和printf函数,3.2 输入与输出(续),C语言要求在调用函数前对被调用的函数进行

3、声明,调用库函数也应如此,这可以通过包含相应的头文件(head file)来完成。 本章介绍的4个函数都在stdio.h头文件中进行描述。因此我们在程序开头包含stdio.h文件即可。 #include 或 #include “stdio.h”,3.2.1字符输出putchar函数,功能 使用putchar函数可以向标准输出设备(通常指显示器)中输出一个字符。 调用方法 putchar(ch); 参数 参数ch可以是字符常量,也可以是字符变量;可以是普通字符,也可以是转义字符。,3.2.1字符输出putchar函数(续),示例 putchar(A); putchar(65); putchar(

4、n); char ch=a; putchar(ch);,3.2.2 字符输入getchar函数,功能 使用getchar函数可以从标准输入设备(通常指键盘)中读取一个字符。 调用方法 char ch; ch=getchar( ) 返回值 调用该函数不需要实际参数,该函数的返回值为读取的字符,如果读取出错,返回值为EOF(-1)。,3.2.2 字符输入getchar函数(续),示例 【例3-2】读取一个字符并输出该字符对应的十进制ASCII码值 /*程序3-2*/ #include void main( ) char ch; ch=getchar( ); printf(“%d”,ch); ,3.

5、2.2 字符输入getchar函数(续),注意 在通过键盘向程序提供数据时,按下回车键表示确认并提交输入数据。输入的字符(包括回车键,在程序中回车键表示换行符)将依次进入输入缓冲区。getchar函数将从输入缓冲区中提取一个字符,将其作为函数返回值。 getchar函数可以读取空格、Tab键、换行符等字符。,3.2.3格式化输出printf函数,【例3-3】计算并输出两个整数的和。 /*程序3-3*/ #include void main( ) int a=1,b=2,sum; sum=a+b; printf(“sum=%dn”,sum); ,1. 基本语法要求,功能 printf函数可以输出

6、多个多种类型的数据,而且可以定义每个数据的输出格式。 调用格式 参数 第一个参数是一个字符串,它说明了数据的输出格式和最后的输出效果,这是必须有的一个参数。 从第二个参数开始的其他参数给出了要输出的数据。每个输出数据可由一个表达式给出。,printf(格式字符串,表达式1,表达式2 ),2. 格式字符串的构成,格式字符串中包含两种内容: 第一种是普通字符(包括转义字符),如程序3-3中的“sum=”,这些内容直接输出。 第二种内容是格式说明符,如示程序3-3中的“%d”,每个格式说明符指定一个输出数据的格式。它起到占位符的作用,格式说明符不被输出,而是由相应的输出数据来替换它。,格式说明符的格

7、式,常用转换说明符包括:d、i、o、x、u、c、s、f、e、g。 标志字符可以是一个或多个以下字符的组合:“-”、“+”、“#”、“0”。 最小宽度的形式为m,m代表一个十进制整数。 精度的形式为.n,其中n代表一个十进制整数。 长度修饰符是以下字符中的一个:“l”、“L”。,% 标志字符 最小宽度 精度 长度修饰符 转换说明符,3转换说明符的含义,转换说明符d、i,用于输出int类型的数据,采用带符号十进制形式表示数据。 /*程序3-4*/ #include void main() int a=123,b=-123; printf(“%d,%d,%dn”,a,b,a+b); 程序执行后输出结

8、果为: 123,-123,0,转换说明符u、o、x、X,用于输出unsigned int类型的数据。采用无符号十进制(u),无符号八进制(o),无符号十六进制(x或X)形式表示数据。字母abcdef用于转换说明符x,字母ABCDEF用于转换说明符X。 注意转换说明符o、x、X不输出八进制或十六进制数的前导标识符0或0x。,转换说明符u、o、x、X,/*程序3-5*/ #include void main() unsigned int a=65535; printf(“%u,%o,%x,%Xn”,a,a,a,a); 程序执行后输出结果为: 65535,177777,ffff,FFFF,转换说明符

9、f、e、E、g、G,用于输出double类型的数据。 转换说明符f采用-ddd.dddddd的十进制小数形式表示数据,且默认输出6位小数,超出部分按四舍五入处理。 转换说明符e采用-d.ddddddedd的十进制指数形式表示数据,且小数点前面有一位非零数字,小数点后面默认包含6位小数,超出部分按四舍五入处理。 转换说明符g将根据数值大小和指定精度(默认精度为6,超出部分按四舍五入处理)自动选择使用f或e的输出格式,选择格式e仅在转换结果的指数部分小于-4或大于等于精度时。转换说明符g不输出小数尾部的0。 字母e用于转换说明符e或g,字母E用于转换说明符E或G。,转换说明符f、e、E、g、G,/

10、*程序3-6*/ #include void main() double a=1234.567; printf(“%f,%e,%gn”,a,a,a); 程序执行后输出结果为: 1234.567000,1.234567e+03,1234.57,转换说明符c,用于输出char类型的数据。 /*程序3-7*/ #include void main() char ch1=A,ch2=x42; printf(“%c,%cn”,ch1,ch2); 程序执行后输出结果为: A,B,转换说明符s,用于输出字符串,从字符串的第一个字符开始输出,直到字符串的结束标志字符,但不输出结束标志字符。 /*程序3-8*/

11、 #include void main() char string =”I like C.”; printf(“%s”,string); 程序执行后输出结果为: I like C.,3.2.3格式化输出printf函数(续),使用printf函数应注意: 格式字符串中的格式说明符的数量应和输出数据的数量相等。 使用正确有效的转换说明符,否则程序将产生无意义的输出结果。,3.2.3格式化输出printf函数(续),/*程序3-9*/ #include void main() int a=1; double b=1.2; printf(“%f,%d”,a,b); 该程序将输出无意义的结果。,4指定

12、最小宽度和精度,最小宽度m是一个整数,它指定了显示一个数据所需要的最少字符个数。如果转换后数据的字符个数比m小,输出数据时,在数据的左侧补充适当数量的空格字符,如果转换后数据的字符个数比m大,则m不起作用,将按数据的实际字符个数输出。,4指定最小宽度和精度(续),指定精度用.n的格式,其中n是一个整数。精度对于不同的转换说明符具有不同的含义。 对于d、i、o、u、x和X,给出了转换后数据应包含的最少数字字符数。如果数字字符数小于n,则在数据前面添加0。如果省略.n,则默认精度为1。 对于f、e和E,给出了转换后数据的十进制小数部分小数点后的数字字符数。如果小数点后的数字字符数大于n,则进行四舍

13、五入处理。如果省略.n,则默认精度为6。 对于g和G,给出了转换后数据的最大有效数字字符数。如果省略.n,则默认最大有效数字字符数为6。 对于s,给出了从字符串截取的子串的最大字符数。截取是从字符串的第一个字符开始的。,4指定最小宽度和精度(续),/*程序3-10*/ #include void main() int a=1234; double b=123.4567; char s =”welcome”; printf(“%d,%6d,%2d,%6.5dn”,a,a,a,a); printf(“%f,%11f,%6f,%10.2fn”,b,b,b,b); printf(“%g,%10g,%5

14、g,%10.2gn”,b,b,b,b); printf(“%s,%8s,%.3s,%8.3sn”,s,s,s,s); 程序执行后输出结果为: 1234,1234,1234,01234 123.456700,123.456700,123.456700,123.46 123.457,123.457,123.457,1.2e+002 welcome,welcome,wel,wel,5标志字符的含义,常用标志字符包括:“-”、“+”、“#”、“0”,使用顺序任意。 标志- 指示转换后的结果在输出域中左对齐(默认为右对齐)。 标志+ 指示有符号数转换后的结果带有正号或负号。 标志# 指示对于转换说明符o

15、,转换结果将增加前缀0;对于转换说明符x或X,转换结果将增加前缀0x或0X。 标志0 指示对于转换说明符d、i、o、u、x、X、e、E、f、g和G,前导零将用于充填域宽而不充填空格字符。若标志0和标志-同时出现,则标志0不起作用。,5标志字符的含义(续),/*程序3-11*/ #include void main() int a=255; printf(“%6d,%-6d,%+dn”,a,a,a); printf(“%o,%#o,%x,%#xn”,a,a,a,a); printf(“%06d,%-06dn”,a,a); 程序执行后输出结果为: 255,255,+255 377,0377,ff,

16、0xff 000255,255,6长度修饰符的含义,常用的长度修饰符包括:“l”、“L”。 修饰符l用于输出long int或unsigned long int类型的数据,它可用在转换说明符的d、i、o、u、x或X前面。 修饰符L用于输出long double类型的数据,它可用在转换说明符的f、e、E、g或G前面。,6长度修饰符的含义(续),/*程序3-12*/ #include void main() long int a=12345678; long double f=123.456789; printf(“%ld,%Lf”,a,f); 程序执行后输出结果为: 12345678,123.456789,3.2.4格式化输入scanf

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

当前位置:首页 > 高等教育 > 大学课件

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