《数据输入输出》PPT课件.ppt_第1页
《数据输入输出》PPT课件.ppt_第2页
《数据输入输出》PPT课件.ppt_第3页
《数据输入输出》PPT课件.ppt_第4页
《数据输入输出》PPT课件.ppt_第5页
已阅读5页,还剩21页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、数据的输出和输入 输出:把数据从计算机内部(内存)送到计算机外部设备(磁盘、显示器等)的操作。 输入:从计算机外部将数据送入计算机内部的操作。 注意:C语言本身没有提供输入输出语句,但可以通过标准库函数中提供的输入和输出函数来实现输入和输出,一般需要包含头文件stdio.h, 即:#include ,第三章 顺序结构,格式:printf(“格式控制串”,输出表) 功能:按指定格式向显示器输出数据 返值:正常,返回输出字节数;出错,返回EOF(-1),格式输出函数,输出表:要输出的数据(可以没有,多个时以“,”分隔) 格式控制串:包含两种信息 格式说明: %修饰符格式字符 ,用于指定输出格式 普

2、通字符或转义序列:原样输出 格式字符,一般形式为: printf(“格式控制字符串”,输出表列),例如:printf(%3dn,x),%格式说明起始符,3输出数据的宽度,d输出数据的类型,x输出项,格式输出函数printf(),可见,双引号中的字符除了格式说明的字符外,其它非格式说明的普通字符按原样输出。,例如:,格式输出函数printf(),说明:格式字符串的一般形式为: % 标志输出最小宽度精度长度类型字符 其中方括号中的项为可选项。 类型字符 用以表示输出数据的类型: C语言中输出不同数据,使用不同的类型字符, 例如:输出整型数据,使用的类型符 d,i (小写),格式输出函数printf

3、(),表示输出类型的格式字符及 意义 d, i 以十进制形式输出带符号整数(正数不输出符号) o 以八进制形式输出无符号整数(不输出前缀O) x, X 以十六进制形式输出无符号整数(不输出前缀OX) u 以十进制形式输出无符号整数 f 以小数形式输出单、双精度实数 e ,E 以指数形式输出单、双精度实数 g ,G 以%f%e中较短的输出宽度输出单、双精度实数 c 输出单个字符 s 输出字符串,格式输出函数printf( ),int a=567;printf ( “%d”,a);,int a=255;printf(“%x”,a);,int a=65;printf(“%o”,a);,int a=5

4、67;printf(“%u”,a);,char a=65;printf(“%c”,a);,printf(“%s”,“ABC”);,float a=567.789;printf(“%e”,a);,float a=567.789;printf(“%f”,a);,float a=567.789;printf(“%g”,a);,printf(“%”);,567,ff,101,567,A,ABC,5.677890e+002,567.789000,567.789,%,说明 格式字符要用小写(除X、E、G) 格式字符与输出项个数应相同,按先后顺序一一对应 输出转换:格式字符与输出项类型不一致,自动按指定格式

5、输出,例 main() unsigned int u=65535; printf(”u=%dn,u); 输出结果:u=-1,例 int a=3,b=4; printf(“%d %dn”,a,b); printf(“a=%d , b=%dn”,a,b);,例 int a=3,b=4; printf(“%d %dn”,a,b); printf(“a=%d , b=%dn”,a,b); 输出结果: 3 4 a=3, b=4,附加格式说明符(修饰符),例 int a=1234; float f=123.456; char ch=a; printf(“%8d,%2dn”,a,a); printf(“%f

6、,%8f,%8.1f,%.2f,%.2en”,f,f,f,f,f); printf(“%3cn”,ch);,运行 1234,1234 结果: 123.456000,123.456000, 123.5,123.46,1.23e+02 a,例 m.n,例 int a=1234; float f=123.456; char c=“Hello,world!”; printf(“%8d,%-8dn”,a,a); printf(“%10.2f,%-10.1fn”,f,f); printf(“%10.5s,%-10.3sn”,c,c);,运行结果:1234,1234 123.46,123.5 Hello,H

7、el,例 -,例 int a=1234; float f=123.456; printf(“%08dn”,a); printf(“%010.2fn”,f); printf(“%0+8dn”,a); printf(“0+10.2fn”,f);,例 0 、+,例 int a=123; printf(“%o,%#o,%X,%#Xn”,a,a,a,a);,例 #,例 long a=65536; printf(“%d,%8ldn”,a, a);,例 l,/00001234,/0000123.46,/000+1234,/000+123.56,/173,0173,7B,0X7B,/0, 65536,注意:

8、1 . 非格式字符串在输出时原样照印,在显示中起提示作用。 4. 输出表列中给出了各个输出项, 要求格式字符串和各输出项在数量和类型上应该一一对应。,格式输出函数printf(),int a=1,b=2; printf(“a=%d,b=%d”,a);,a=1,b=877 ( b为一个不确定的数),int a=1,b=2,c=3; printf(“a=%d,b=%d,c=”,a,b,c),a=1,b=2,c= c未告之以何种形式输出 故不输出任何值,格式输入函数,格式: scanf(“格式控制串”,地址表) 功能:按指定格式从键盘读入数据,存入地址表指定的 存储单元中,并按回车键结束 返值:正常

9、,返回输入数据个数,地址表:变量的地址,常用取地址运算符 long b; double x; scanf(“%d%ld%lf”, ,格式输入函数scanf(),附加格式说明符(修饰符),例 scanf(“%4d%2d%2d”, 输入 19991015 则1999yy, 10 mm, 15 dd,例 scanf(“%3d%*4d%f”, 输入 12345678765.43 则123k, 8765.43f,例 scanf(“%2d%*3d%2d”, 输入 1234567 则12a, 67b,例 scanf(“%3c%2c”, 输入 abcde 则ac1, d c2,3. 使用scanf函数还必须注

10、意以下几点: (1) scanf函数中没有精度控制 。 如:scanf(“%5.2f”, 输入: 12 10 或 12 10,格式输入函数scanf(),(4)在输入字符数据时,若格式控制串中无非格式字符,则认为所有 输入的字符均为有效字符。 例如: scanf(%c%c%c, 输入时各数据之间可加空格。,格式输入函数scanf(),(5)如果格式控制串中有非格式字符则输入时也要输入该非格式字符。 例如: scanf(%d,%d,%d, 则输入应为: a=5,b=6,c=7,格式输入函数scanf(),(6)如输入的数据与输出的类型不一致时,虽然编译能够通过,但结果可能不正确。 main()

11、short a; printf(input a numbern); scanf(“%hd”, /*vc6中短整型必须用hd*/ ,由于输入数据类型为短整型, 而输出语句的格式串中说明为整型(VC6中,整型与长整型一致),因此输出结果和输入数据不符。,格式输入函数scanf(),(7)输入数据(不包括字符)时,遇到以下情况,系统认为该数据结束: a.遇到空格,或者回车键,或者Tab键。 b.遇到输入域宽度结束。例如“%3d”,只取3 列。 c.遇到非法输入。例如,在输入数值数据时,遇到字母等非数值符号(数值符号仅由数字字符0-9、小数点和正负号构成)。,格式输入/输出-例题,例1:为float类型变量a、b输入数据1.2和2.3,下列哪一组是正确的( )。 A、scanf(%f%f, 输入1.22.3,例2: 编一程序输入一个正整数,输出它的16进制数,main() int n; scanf(“%d”, ,空语句与复合语句,空语句用一个分号表示,其一般形式为: ; 它在语法上占有一个简单语句的位置,而执行该语句不做任何操作。空语句常用于循环语句中,构成空循环。 复合语句是由花括号将多条语句组合在一起而构成的,在语法上相当于一条语句。复合语句的形式为: 内部数据描述语句 数据操作语句1; 数据操作语句n; 使用复合语句应注意: (1)在复合语句的“内部数据描述语句”中定义的

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论