C语言数据的输入输出.ppt
《C语言数据的输入输出.ppt》由会员分享,可在线阅读,更多相关《C语言数据的输入输出.ppt(48页珍藏版)》请在咨信网上搜索。
1、 第第3章章 数据的输入与输出(数据的输入与输出(2)1.3.4.3 字符输入输出函数字符输入输出函数3.4.4 格式化输入输出函数的一般使用格式化输入输出函数的一般使用2.数据输入输出的概念数据输入输出的概念n所谓输入输出是以计算机主机为主体而言的。所谓输入输出是以计算机主机为主体而言的。输出输出:从计算机向外部输出设备从计算机向外部输出设备(显示器显示器,打印机打印机)输出数据。输入输出数据。输入:从输入设备从输入设备(键盘键盘,鼠标鼠标,扫描仪扫描仪)向计算机输入数据向计算机输入数据nC C语言本身不提供输入输出语句语言本身不提供输入输出语句,输入和输出操作输入和输出操作是由是由C C函
2、数库中的函数来实现的函数库中的函数来实现的例如例如:字符输入函数字符输入函数:getchar :getchar 字符输出函数字符输出函数:putchar:putchar格式输入函数格式输入函数:scanf :scanf 格式输出函数格式输出函数:printf:printf字符串输入函数字符串输入函数:gets :gets 字符串输出函数字符串输出函数:puts:puts3.3.4.3字符输入输出函数字符输入输出函数nputchar(x)函数:有参数函数:有参数例:例:putchar(ch);putchar(A);putchar(65);每句只能输出一个字符数据每句只能输出一个字符数据。nget
3、char()函数:无参数函数:无参数从键盘读入一个字符从键盘读入一个字符(空格回车都算空格回车都算)。程程序序执执行行到到 getchar函函数数时时,等等待待输输入入字字符符,直直到到按按回回车车才才结结束束,回回车车前前的的所所有有输输入入字字符符都都将将逐逐个个显显示示在在屏屏幕幕上上。但只有第一个字符被但只有第一个字符被getchar函数接收。函数接收。c=getchar();c=getchar();按回车符才可送出按回车符才可送出n当当使用这两个函数时使用这两个函数时,在程序的开头一定要加上在程序的开头一定要加上:#include 4.字符输入输出函数字符输入输出函数ngetch()
4、函数函数:无参数。无参数。getch()的的作作用用与与getchar类类似似,都都是是从从标标准准输输入入设设备备(通常指键盘通常指键盘)读入一个字符。其调用形式分别为:读入一个字符。其调用形式分别为:getch();但但getch函函数数读读入入的的字字符符不不会会回回显显在在屏屏幕幕上上,它它与与getchar函函数数不不同同之之处处在在于于:getch函函数数不不必必输输入入回回车车才才结结束束,只只要要输输入入任任意意一一个个键键,该该字字符符立立即即被被接接收收,程程序序继继续续执执行行下下一一条条语语句句。利利用用这这一一特特点点,这这两两个个函函数数经经常常用用于于交交互互输入
5、的过程中实现暂停功能输入的过程中实现暂停功能,或直接查看程序运行结果或直接查看程序运行结果。5.字符输入输出函数字符输入输出函数补充例题补充例题#include main()char ch;ch=getchar();putchar(ch);putchar(n);printf(%c,%dn,ch,ch);getch();/*等待按任一键程序结束等待按任一键程序结束*/当屏幕输入当屏幕输入12345回车时屏回车时屏幕输出的结果是幕输出的结果是什么?什么?此语句可否用:此语句可否用:scanf(“%c“,&ch);6.例:输出单个字符例:输出单个字符#include stdio.hmain()cha
6、r a,b,c;a=A;b=B;c=C;clrscr();putchar(a);putchar(b);putchar(c);putchar(n);putchar(a);putchar(n);putchar(b);putchar(n);putchar(c);每次只能输出一个字符每次只能输出一个字符putchar();输出空格输出空格运行结果:运行结果:ABC A B C 字符输入输出函数字符输入输出函数putchar(101);A7.运行程序:运行程序:从键盘输入字符从键盘输入字符a a按按EnterEnter键键屏幕上将显示输出的屏幕上将显示输出的字符字符a aa aa a例例 输入单个字符。
7、输入单个字符。#include stdio.hmain()char c;c=getchar();putchar(c);putchar(n);字符输入输出函数字符输入输出函数8.3.4.4格式输入函数与格式输出函数格式输入函数与格式输出函数nprintf函数是格式化输出函数函数是格式化输出函数,用于向标准输出设用于向标准输出设备备(通常指定为屏幕通常指定为屏幕)按规定格式输出数据。按规定格式输出数据。nprintf函数的调用格式为:函数的调用格式为:printf(格式控制字符串格式控制字符串,输出列表输出列表);其中其中格式化字符串包括两部分内容格式化字符串包括两部分内容:一是普通字符一是普通字
8、符按原样输出按原样输出,转义字符转义字符输出它所代表的字符;二是输出它所代表的字符;二是“输出格式说明输出格式说明”,以以“%”开始开始,后跟格式字符后跟格式字符,用来指用来指定输出数据的格式。如定输出数据的格式。如%d 输出输出int型数据型数据 输出列表输出列表是若干个需要输出的数据项是若干个需要输出的数据项,称为函数的称为函数的参数参数,可以是常量、变量或表达式可以是常量、变量或表达式,各参数之间用各参数之间用,分开。分开。9.格式化输出函数格式化输出函数printf()nprintf函数的输出格式说明函数的输出格式说明 每个格式说明都必须用每个格式说明都必须用%开头开头,以一个格式字以
9、一个格式字符作为结束符作为结束,在此之间根据需要可以插入在此之间根据需要可以插入宽度说宽度说明明、长度修饰符、长度修饰符l和和L等。等。n(1)格式字符:格式字符:格式字符用于规定输出不同的数据格式字符用于规定输出不同的数据类型类型,格式字符和它们的作用如下表,可详见附录格式字符和它们的作用如下表,可详见附录D。10.格式化输出函数格式化输出函数printf()格式字符格式字符作作 用用d 或或 i输出十进制有符号整数输出十进制有符号整数(正数不输出符号正数不输出符号+)u输出十进制无符号整数输出十进制无符号整数o无符号整数以八进制整数输出无符号整数以八进制整数输出(输出时不带前导输出时不带前
10、导0)x 或或 X无符号整数以无符号整数以十六进制整数输出十六进制整数输出(输出时不带前导输出时不带前导0 x或或0X)。x用于输出用于输出abcdef,X用于输出用于输出ABCDEFc以以字符形式输出单个字符字符形式输出单个字符s输出字符串直至字符串结束标志输出字符串直至字符串结束标志0为止为止,不输出不输出f以小数形式输出实型数据以小数形式输出实型数据,系统默认整数部分全部输出系统默认整数部分全部输出,小数部小数部分输出分输出6位小数位小数,小数部分小数部分自动四舍五入自动四舍五入e 或或 E以指数形式输出实数以指数形式输出实数,系统默认输出系统默认输出1位整数和位整数和5位小数位小数,超
11、长部超长部分自动四舍五入分自动四舍五入,输出格式为:输出格式为:-m.dddddeddg 或或 G由系统来选择由系统来选择%f或或%e输出格式输出格式,宽度小者被输出宽度小者被输出p输出变量的内存地址输出变量的内存地址%输出一个输出一个%号号11.格式化输出函数格式化输出函数printf()(2)长度修饰符长度修饰符:长度修饰符加在长度修饰符加在%和格式字符之间。和格式字符之间。长度修饰符长度修饰符作作 用用l格式字符是格式字符是d,i,o,u,x,X时时,用于输出长整型数用于输出长整型数据据(long int)L格式字符是格式字符是e,E,f,g,G时时,用于输出长双精度用于输出长双精度实型
12、数据实型数据(long double)从上表可知:从上表可知:双精度实型数据的输出不要用双精度实型数据的输出不要用%lf,只要用只要用%f即可。但即可。但长双精度实型数据的输出必须加长长双精度实型数据的输出必须加长度修饰符度修饰符L,例如例如%Lf、%Le等。等。12.(3)#修饰符修饰符:使用使用%#o、%#x,在输出的八进制或十六进制前加前导在输出的八进制或十六进制前加前导“0”。例如:例如:main()unsigned c=65535;printf(%#on,c);printf(%#xn,c);格式化输出函数格式化输出函数printf()输出结果输出结果如下如下:01777770 xff
13、ff13.格式化输出函数格式化输出函数printf()(4)在输出的数字前加在输出的数字前加+号号 使用使用%+格式字符格式字符(如如%+d、%+f等等),可在输出的数字前可在输出的数字前加加+号号,例如例如 printf(%+d,%+10.2f,123,12345.678);输出结果如下输出结果如下:+123,+12345.68。例:例:int x=1234,y=123,z=12;printf(%4d+%3d+%2d,x,y,z)输出结果:输出结果:1234+123+1214.格式化输出函数格式化输出函数printf()(5)输出数据所占的宽度输出数据所占的宽度整型数据的输出宽度整型数据的输
14、出宽度%md、%mu、%mo、%mx,按按m宽度输出数据宽度输出数据,不足不足m个位数个位数,左补空格左补空格(数据右对齐数据右对齐)。实型数据的输出宽度实型数据的输出宽度%m.nf、%m.ne、%m.ng,数据输出的总宽占数据输出的总宽占m列列,其中其中小数部分占小数部分占n列列,若数据自身宽度小于若数据自身宽度小于m列列,则左则左补空格补空格。字符串的输出宽度字符串的输出宽度%ms 输出宽度占输出宽度占m列列,若字符串宽度小于若字符串宽度小于m列列,左补空格左补空格,若字符串宽度大于若字符串宽度大于m列则原样输出字串。列则原样输出字串。15.整型数据的输出宽度整型数据的输出宽度main()
15、int a=34,b=12345;clrscr();printf(%dn,a);printf(%10dn,a);printf(%-10dn,a);printf(%4dn,b);34 34341234516.实型数据的输出宽度实型数据的输出宽度main()float a=123.456;clrscr();printf(a=%fn,a);printf(a=%4fn,a);printf(a=%15fn,a);printf(a=%.2fn,a);printf(a=%.5fn,a);a=123.456001a=123.456001a=123.456001a=123.46a=123.4560017.格式化
16、输出函数格式化输出函数printf()字符数据的输出宽度字符数据的输出宽度%mc输出宽度占输出宽度占m列列,左补左补m-1个空格。个空格。在输出宽度在输出宽度m前加一个负号前加一个负号,则右补则右补m-1个空格个空格。表。表2.11举例说明举例说明字符型数据的输出。字符型数据的输出。输出语句输出语句输出结果输出结果 说明说明printf(%cn,A);A输出宽度为输出宽度为1printf(%5cn,A);A输出宽度为输出宽度为5,左补左补4个空格个空格printf(%-5c*n,A);A *输出宽度为输出宽度为5,右补右补4个空格个空格18.格式化输出函数格式化输出函数printf()(1)格
17、式符。用来输出十进制整数。格式符。用来输出十进制整数。(2)(2)几种用法:几种用法::按十进制整型数据的实际长度输出。按十进制整型数据的实际长度输出。:为指定的输出字段的宽度。如果为指定的输出字段的宽度。如果数据的位数小于数据的位数小于,则左端补以空格,若则左端补以空格,若大于,则按实际位数输出大于,则按实际位数输出。例例:(,),);若,则输出结果为若,则输出结果为 ,:输出长整型数据。输出长整型数据。例例:;/*/*定义定义a a为长整型变量为长整型变量*/(,);,);输出结果为输出结果为19.格式化输出函数格式化输出函数printf()(2)(2)格式符。以八进制整数形式输出。格式符
18、。以八进制整数形式输出。输出的数值不带符号,输出的数值不带符号,符号位也一起作为八进制数的一部分符号位也一起作为八进制数的一部分输出。输出。例:例:int a=-1;int a=-1;printf(%d printf(%d,%o%o,a a,a);a);在内存单元中的存放形式(以补码形式存放)如下:在内存单元中的存放形式(以补码形式存放)如下:1111111111111111 1111111111111111 输出为输出为:,不会输出带负号的八进制整数。对长整数(型)可以不会输出带负号的八进制整数。对长整数(型)可以用用“”格式输出。还可以格式输出。还可以指定字段宽度指定字段宽度,例例:(,)
19、,);输出为输出为:177777177777。(数字前有数字前有2 2个空格个空格)20.格式化输出函数格式化输出函数printf()(3)(3)格式符。以十六进制数形式输出整数。同样不会出格式符。以十六进制数形式输出整数。同样不会出现负的十六进制数。现负的十六进制数。例:例:;(,);,);输出结果为输出结果为:ffff ffff,可以用可以用“”输出长整型数,也可以输出长整型数,也可以指定输出字段的宽度指定输出字段的宽度例例:“”输出为输出为:ffff。(数字前有数字前有8个空格个空格)21.格式化输出函数格式化输出函数printf()(4)(4)格式符,用来输出型数据格式符,用来输出型数
20、据.一个有符号整数(型)也可以用格式输出;一个有符号整数(型)也可以用格式输出;一个型数据也可以用格式输出。一个型数据也可以用格式输出。型数据也可用或格式输出。型数据也可用或格式输出。(5)(5)格式符,用来输出一个字符。格式符,用来输出一个字符。如:如:d d;(,d d););输出字符输出字符.一个整数,一个整数,只要它的值在范围内,可以用只要它的值在范围内,可以用“”使之按字符形式输出使之按字符形式输出,在输出前,系统会将该整数作为,在输出前,系统会将该整数作为ASCIIASCII码码转换成相应的字符;一个字符数据也可以用整数形式输出。转换成相应的字符;一个字符数据也可以用整数形式输出。
21、22.格式化输出函数格式化输出函数printf()例例 无符号数据的输出。无符号数据的输出。#includemain()unsigned int a=65535;int b=-2;printf(a=%d,%o,%x,%un,a,a,a,a);printf(b=%d,%o,%x,%un,b,b,b,b);运行结果:运行结果:a=-1a=-1,177777177777,ffffffff,6553565535b=-2b=-2,177776177776,fffefffe,655346553423.格式化输出函数格式化输出函数printf()例:字符数据的输出例:字符数据的输出#include main
22、()char c=a;int i=97;clrscr();printf(%c,%dn,c,c);printf(%c,%dn,i,i);getch();运行结果:运行结果:a,97a,97a,97a,9724.格式化输出函数格式化输出函数printf()(6)s(6)s格式符格式符 输出字符串输出字符串.。例如:。例如:(,)输出字符串输出字符串“”(不包括双引号)。(不包括双引号)。%ms%ms,输出的字符串占,输出的字符串占m m列,若串长大于列,若串长大于m m,则全部输出,若串长,则全部输出,若串长 小于小于m m,则左补空格。,则左补空格。%-ms%-ms,若串长小于,若串长小于m m
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 语言 数据 输入输出
1、咨信平台为文档C2C交易模式,即用户上传的文档直接被用户下载,收益归上传人(含作者)所有;本站仅是提供信息存储空间和展示预览,仅对用户上传内容的表现方式做保护处理,对上载内容不做任何修改或编辑。所展示的作品文档包括内容和图片全部来源于网络用户和作者上传投稿,我们不确定上传用户享有完全著作权,根据《信息网络传播权保护条例》,如果侵犯了您的版权、权益或隐私,请联系我们,核实后会尽快下架及时删除,并可随时和客服了解处理情况,尊重保护知识产权我们共同努力。
2、文档的总页数、文档格式和文档大小以系统显示为准(内容中显示的页数不一定正确),网站客服只以系统显示的页数、文件格式、文档大小作为仲裁依据,平台无法对文档的真实性、完整性、权威性、准确性、专业性及其观点立场做任何保证或承诺,下载前须认真查看,确认无误后再购买,务必慎重购买;若有违法违纪将进行移交司法处理,若涉侵权平台将进行基本处罚并下架。
3、本站所有内容均由用户上传,付费前请自行鉴别,如您付费,意味着您已接受本站规则且自行承担风险,本站不进行额外附加服务,虚拟产品一经售出概不退款(未进行购买下载可退充值款),文档一经付费(服务费)、不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
4、如你看到网页展示的文档有www.zixin.com.cn水印,是因预览和防盗链等技术需要对页面进行转换压缩成图而已,我们并不对上传的文档进行任何编辑或修改,文档下载后都不会有水印标识(原文档上传前个别存留的除外),下载后原文更清晰;试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓;PPT和DOC文档可被视为“模板”,允许上传人保留章节、目录结构的情况下删减部份的内容;PDF文档不管是原文档转换或图片扫描而得,本站不作要求视为允许,下载前自行私信或留言给上传者【w****g】。
5、本文档所展示的图片、画像、字体、音乐的版权可能需版权方额外授权,请谨慎使用;网站提供的党政主题相关内容(国旗、国徽、党徽--等)目的在于配合国家政策宣传,仅限个人学习分享使用,禁止用于任何广告和商用目的。
6、文档遇到问题,请及时私信或留言给本站上传会员【w****g】,需本站解决可联系【 微信客服】、【 QQ客服】,若有其他问题请点击或扫码反馈【 服务填表】;文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“【 版权申诉】”(推荐),意见反馈和侵权处理邮箱:1219186828@qq.com;也可以拔打客服电话:4008-655-100;投诉/维权电话:4009-655-100。