第3章基本输入输出和顺序程序设计课件

上传人:我*** 文档编号:141427886 上传时间:2020-08-07 格式:PPT 页数:46 大小:974KB
返回 下载 相关 举报
第3章基本输入输出和顺序程序设计课件_第1页
第1页 / 共46页
第3章基本输入输出和顺序程序设计课件_第2页
第2页 / 共46页
第3章基本输入输出和顺序程序设计课件_第3页
第3页 / 共46页
第3章基本输入输出和顺序程序设计课件_第4页
第4页 / 共46页
第3章基本输入输出和顺序程序设计课件_第5页
第5页 / 共46页
点击查看更多>>
资源描述

《第3章基本输入输出和顺序程序设计课件》由会员分享,可在线阅读,更多相关《第3章基本输入输出和顺序程序设计课件(46页珍藏版)》请在金锄头文库上搜索。

1、管理学院信息管理教研室,程序设计基础 -C语言程序设计教程(第二版),第3章:基本输入输出和顺序程序设计,学习的意义,程序对数据的处理流程: 程序的主要功能就是对数据的处理,其整个流程主要包括数据的输入、数据的处理、数据的输出。,数据处理,数据输入,数据输出,C程序中如何实现数据输入?,C程序中如何实现数据输出?,程序的结构: 写文章有文章的结构 建房子有房子的结构 制造机械产品由机械产品的结构 那么编写程序是否有程序的结构呢?,学习的意义,YES!,本章讨论,第4章讨论,第5章讨论,格式化输出printf 格式化输入scanf 字符数据的非格式化输入、输出 程序的控制结构 顺序程序设计举例

2、本章小结,学习目标,掌握各种类型数据的格式化输入输出方法; 掌握字符数据的非格式化输入输出方法; 理解三种程序控制结构的流程图; 学会简单顺序程序的设计; 养成良好的程序设计习惯;,学习内容,3.1 格式化输出printf,一般格式,printf (格式控制字符串,表达式1,表达式2,表达式n);,功能,按照“格式控制字符串”的要求,将表达式1,表达式2,表达式n的值显示在计算机屏幕上。,说明,格式控制字符串用于指定输出格式。它包含两类字符: 常规字符:包括可显示字符和用转义字符表示的字符。 格式控制符:以%开头的一个或多个字符,以说明输出数据的类型、形式、长度、小数位数等。其格式为:,%修饰

3、符格式转换字符,例: long int x = 0 x8AB6; printf (“The Value of x is %ldn”, x);,常规字符,常规字符 (转义符),格式控制符 (修饰符),格式控制符 (格式转换符),printf使用时的注意事项,(1) 格式控制字符串可以不包含任何格式控制符。 (2) 当格式控制字符串中既含有常规字符,又包含有格式控制符时,则表达式的个数应与格式控制符的个数一致。此时,常规字符原样输出,而格式控制符的位置上输出对应的表达式的值,其对应的顺序是:从左到右的格式控制符对应从左到右的表达式。 (3) 如果格式控制字符串中格式控制符的个数多于表达式的个数,则

4、余下的格式控制符的值将是不确定的。 (4) 不同类型的表达式要使用不同的格式转换符,同一表达式如果按照不同的格式转换符来输出,其结果可能是不一样的。,printf (“how are you?n”); /只有一个字符串参数, 输出为:how are you? printf (“how old are you?n”, 20); /带有两个参数,20没有意义, 输出为:how old are you?,char ch = A; printf (ch = %c, ch); /输出结果:ch = A (以字符形式输出) printf (ch = %d, ch); /输出结果:ch = 65 (以A字符

5、的ASCII码形式输出),printf函数中的格式转换字符及其含义,printf函数中的格式转换字符及其含义,1. 整数的输出,有符号整数的输出,一般形式:, :表示可选项,可缺省。 :表示输出的数据左对齐,缺省时是右对齐。 :输出正数时,在数的前面加上号。 数字0:右对齐时,如果实际宽度小于width,则在左边的空位补0。 width:无符号整数,表示输出整数的最小域宽(即占屏幕的多少格)。若实际宽度超过了width,则按照实际宽度输出。 .precision:无符号整数,表示至少要输出precision位。若整数的位数大于precision,则按照实际位数输出,否则在左边的空位上补0。 字

6、母l:如果在d的前面有字母l(long),表示要输出长整型数据。 字母h:如果在d的前面有字母h(short),表示要输出短整型数据。,说明:,【例】有符号整数的格式化输出,#include void main ( ) int a = 123; long L = 65537; printf ( 12345678901234567890n); printf (a=%d-(a=%d)n, a); printf (a=%6d-(a=%6d)n, a); printf (a=%+6d-(a=%+6d)n, a); printf (a=%-6d-(a=%-6d)n, a); printf (a=%-06

7、d-(a=%-06d)n, a); printf (a=%+06d-(a=%+06d)n, a); printf (a=%+6.6d-(a=%+6.6d)n, a); printf (a=%6.6d-(a=%6.6d)n, a); printf (a=%-6.5d-(a=%-6.5d)n, a); printf (a=%6.4d-(a=%6.4d)n, a); printf (L=%ld-(L=%ld)n, L); printf (L=%hd-(L=%hd)n, L); ,12345678901234567890 a=123-(a=%d) a= 123-(a=%6d) a= +123-(a=%

8、+6d) a=123 -(a=%-6d) a=123 -(a=%-06d) a=+00123-(a=%+06d) a=+000123-(a=%+6.6d) a=000123-(a=%6.6d) a=00123 -(a=%-6.5d) a= 0123-(a=%6.4d) L=65537-(L=%ld) L=1-(L=%hd),运行结果:,L是一长整型数65537,其值为十六进制0X00010001,所以要将其转换成短整型,即取低16位0 x0001,将其输出,故输出为1。,Why?,1. 整数的输出,无符号整数的输出,一般形式:, :表示可选项,可缺省。 | :表示互斥关系。 # :表示当以八进

9、制形式输出数据(%o)时,在数字前输出0;当以十六进制形式输出数据(%x或%X)时,在数字前输出0 x或0X。 .precision的含义与前面介绍的相同,但要注意,在TC和BC下,precision所指定的位数也包含了0 x或0X所占的位数,可在VC下,则不包含0 x或0X所占的位数。 其它字段的含义与前面介绍的相同。,说明:,【例】无符号整数的格式化输出,#include void main ( ) int a = -1; unsigned u = 32767; unsigned long L = -32768; printf (a=%d, a=%u-(a=%d, a=%u)n, a, a

10、); printf (a=%hx, a=%X-(a=%hx, a=%X)n, a, a); printf (u=%o, u=%X-(u=%o, u=%X)n, u, u); printf (u=%#010X-(u=%#010X)n, u); printf (u=%#10.10X- (u=%#10.10X)n, u); printf (L=%lX- (L=%lX)n,L); printf (L=%-#14.10X- (L=%-#14.10X)n, L); ,a=-1, a=65535-(a=%d, a=%u) a=ffff, a=FFFF-(a=%hx, a=%X) u=77777, u=7FF

11、F-(u=%o, u=%X) u=0X00007FFF-(u=%#010X) u=0X00007FFF-(u=%#10.10X) L=FFFF8000-(L=%lX) L=0X00008000 -(L=%-#14.10X),运行结果(在BC3.1下):,a=-1, a=4294967295-(a=%d, a=%u) a=ffff, a=FFFFFFFF-(a=%hx, a=%X) u=77777, u=7FFF-(u=%o, u=%X) u=0X00007FFF-(u=%#010X) u=0X0000007FFF-(u=%#10.10X) L=FFFF8000-(L=%lX) L=0X00FF

12、FF8000 -(L=%-#14.10X),运行结果(在VC6.0下):,2. 实数的输出,一般形式:, :表示可选项,可缺省。 | :表示互斥关系。 #:必须输出小数点。 .precision:规定输出实数时,小数部分的位数。 l:输出double型数据(缺省时也是输出double型数据)。 L:输出long double型数据。 其它字段的含义与前面介绍的相同。,说明:,【例】实数的格式化输出,#include void main ( ) double f = 2.5e5; printf ( 12345678901234567890n); printf (f=%15f-(f=%15f)n,

13、 f); printf (f=%015f-(f=%015f)n, f); printf (f=%-15.0f-(f=%-15.0f)n, f); printf (f=%#15.0f-(f=%#15.0f)n, f); printf (f=%+15.4f-(f=%+15.4f)n, f); printf (f=%15.4E-(f=%15.4E)n, f); ,12345678901234567890 f= 250000.000000-(f=%15f) f=00250000.000000-(f=%015f) f=250000 -(f=%-15.0f) f= 250000.-(f=%#15.0f)

14、f= +250000.0000-(f=%+15.4f) f= 2.5000E+005-(f=%#15.4E),运行结果:,3. 字符和字符串的输出,一般形式:, :表示可选项,可缺省。 .precision:表示只输出字符串的前precision个字符。 其它字段的含义与前面介绍的相同。,说明:,【例】字符及字符串的格式化输出,#include void main ( ) char ch = A; printf ( 12345678901234567890n); printf (ch=%c-(ch=%c)n, ch); printf (ch=%4c-(ch=%4c)n, ch); printf (ch=%-4c-(ch=%-4c)n, ch); printf (ch=%04c-(ch=%04c)n, ch); printf (st=%s-(st=%s)n, CCNU); printf (st=%6s-(st=%6s)n, CCNU); printf (st=%06.3s-(st=%06.3s)n, CCNU); ,12345678901234567890 ch=A-(ch=%c) ch= A-(ch=%4c) ch=A -(ch=%-4c) ch=000A-(ch=%04c) st=CCNU-(st=

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

当前位置:首页 > 办公文档 > PPT模板库 > PPT素材/模板

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