数据的输入.ppt

上传人:仙人****88 文档编号:87416281 上传时间:2023-04-16 格式:PPT 页数:27 大小:127.51KB
返回 下载 相关 举报
数据的输入.ppt_第1页
第1页 / 共27页
数据的输入.ppt_第2页
第2页 / 共27页
点击查看更多>>
资源描述

《数据的输入.ppt》由会员分享,可在线阅读,更多相关《数据的输入.ppt(27页珍藏版)》请在taowenge.com淘文阁网|工程机械CAD图纸|机械工程制图|CAD装配图下载|SolidWorks_CaTia_CAD_UG_PROE_设计图分享下载上搜索。

1、数据的输入与输出(二)Printf语句补充l长度修饰符h和ll长度修饰符l:对于整型数据,如%ld、%lo等分别指十进制长整型、八进制长整型;对于实型数据来说,%le、%lf是指double型l长度修饰符h:只能用于整型数据,表示短整型,如%hdPrintf语句补充lPrintf语句中*的使用 在%后加上“*”,且下一个参数必须是整型,在输出项中指定该整型数据的宽度。#include Main()int a,b;a=5;b=123;printf(“%*d”,a,b);123输入函数输入函数scanfl一:scanf函数的功能函数的功能 输入数据,具体地说,它是按照格式参数的要求,从键盘上把数据

2、传送到地址 参数所指定的内存空间中。l二:一般形式一般形式:scanf(格式控制参数,地址1,地址2,)(一)地址参数 地址参数是通过对变量进行取地址运算得到的,形式如下:+变量名,例如:&a,即在变量句前加上取地址运算符“”即可得到这些变量的地址。(二)格式控制参数 两种成分:格式说明符、输入分隔符main()int a,b;a=2;b=&a;printf(%xn,b);ff4d格式说明符和printf()函数中的格式说明符相似,以“开始,以个格式字符结束,中间可插入修饰符。具体见书本49页表4-3。如scanf(“%d%d%d”,&a,&b,&c);/a=1,b=2,c=3输入:123 1

3、 2 3 哪一种是正确的输入?还可以怎么输入?lscanf(“%d%d%d”,&a,&b,&c);l不含分隔符的格式控制部分,输入数据时,两个数据之间以一个或多个空格、用Tab键或回车键分隔。格式控制说明符在%和格式字符之间可插入附加的格式说明符。字符说明l用于输入长整型数据(可用%ld、%lo、%lx)以及double型数据(用%lf或%le)h用于输入短整型数据(可用%hd、%ho、%hx)m(正整数)域宽,指定输入数据所占宽度(列数)*表示本输入项在读入后不赋给相应的变量“*”的使用l如scanf(“%d%*c%d”,&a,&b);l输入 2+3“+”被忽略,即%c的作用是跳过1个输入字

4、符。如scanf(“%d%*d%d”,&a,&b);想一想如何输入可以正确的接收输入的信息。a=2 b=31 2 3%md域宽控制l限制从输入数据数据中接收的字符个数。如希望接收的整数不超过4位,可用下列语句表示:lScanf(“%4d%4d”,&a,&b);a=12 b=3456a=1234 b=567812 34567812345678如果限制接收字符个数大于实际个数,则以实际的数据为准l格式控制符中不带域宽,则以分隔符作字符串的结束,反之则按域宽进行截取。l不能企图用格式控制来规定输入数据的精度。scanf(%7.2f,&a)scanf(%f,&a)分隔符l为了把数据项彼此清楚的分隔开,

5、可加入分隔符,这些分隔符可以是格式说明符以外的字符,如:Scanf(“%d,%d,%d”,&a,&b,&c);其中格式控制参数中逗号就是起分隔作用的输入分隔符,输入数据时,用逗号分隔数据。输入:12,34,56Scanf(“%d%d%d”,&a,&b,&c);Scanf(“%d:%d:%d”,&a,&b,&c);12 34 5612:34:56总之,格式控制参数中用什么分隔符,输入时就要相应地用这些分隔符。%c输入字符lMain()int a,b;char c,ch;printf(“enter int a and b:”);scanf(“%d%d”,&a,&b);printf(“enter c

6、har c and ch”);scanf(“%c%c”,&c,&ch);printf(“a=%d b=%dn”,a,b);printf(“c=%d ch=%dn”,c,ch);enter int a and b:123 456 enter char c and ch:ABa=123 b=456c=10 ch=65C接收换行符Ch 接收字符A分析:l输入的数据并不是直接传给变量,而是先存入内存中的缓冲区,按回车键后,scanf()函数再从缓冲区读取数据,如果缓冲区中的数据没有被读完,剩下的数据可供一下个scanf()函数使用。l换行符也是一个字符,当输入123 456后,123和456被第一个s

7、canf()取走,换行符并没有取走,仍存储在缓冲区中,被第二个scanf()继续使用,传给变量c,再读取字符a传给变量ch,剩下的字符b和换行符仍在缓冲区中。为了避免这个问题,可以使用修饰符“*”,使换行符不赋给任何变量。l想一想如何修改?(参看书本P52例4-5)l如果第二个scanf()读入的整数,有没有必要用修饰符“*”?字符输入输出函数getchar()/putchar()getchar()和putchar()是一对用于单个字符输入输出的标准函数。一、putchar()函数功能:在终端的当前位置输出一个字符格式:putchar(字符变量)或putchar(输出字符)或 putchar(

8、整数)(不大于255)#include main()char a,b;a=B;b=o;putchar(a);putchar(b);putchar(y);例:运行结果为:Boy#include main()int a;char ch;a=65;ch=A;putchar(a);putchar(ch);putchar(A);putchar(65);putchar()也可以输出控制字符,如putchar(n)。可以将上例的最后一行改为:putchar(a);putchar(n);putchar(b);putchar(n);putchar(y);putchar(n);也可以输出其它转义字符,如:putc

9、har();putchar();getchar()l它是1个不带参数的函数,即圆括号没有参数,但圆括号不能省略.它的功能是从标准输入设备上接收1个字符.#include main()char ch;ch=getchar();printf(“%cn”,ch);printf(“%dn”,ch);等待用户从键盘读入字符A A65#include main()char ch;ch=getchar();putchar(ch);例:putchar(getchar();功能:显示从键盘上读入的字符l执行getchar()函数时,虽然读入个字符,但并不是从键盘按个字符,该字符就被送给个变量,而是等到输入完成并

10、按回车键后,才将输入的字符存入内存缓冲内,然后getchar()函数从缓冲区中取个字符赋给变量在使用getchar()函数时,换行符也可作为输入字符的一部分尤其在连续使用该函数时要特别注意换行符有可能被接收#include main()char c,ch;c=getchar();ch=getchar();printf(“%cn”,c);printf(“%dn”,ch);A A10、getchar()函数只接收一个字符,而不是一个字符串;、使用putchar、getchar函数需要加上命令行#include 说明:、只有在按“回车”键之后输入才生效;练习l1、p54选择题第二题l2、p56第3、5、6、7题。main()int a,b,c,d,e,f;scanf(“%d%d”,&a,&b);scanf(“%d%d”,&c,&d);scanf(“%d”,&e);scanf(“%d”,&f);printf(“a=%d,b=%d,c=%d,d=%d,d=%d,e=%d,f=%d”,a,b,c,d,e,f);一次运行的情况如下:1234364860 84 a=12,b=34,c=36,d=48,e=60,f=72

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

当前位置:首页 > 教育专区 > 小学资料

本站为文档C TO C交易模式,本站只提供存储空间、用户上传的文档直接被用户下载,本站只是中间服务平台,本站所有文档下载所得的收益归上传人(含作者)所有。本站仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。若文档所含内容侵犯了您的版权或隐私,请立即通知淘文阁网,我们立即给予删除!客服QQ:136780468 微信:18945177775 电话:18904686070

工信部备案号:黑ICP备15003705号© 2020-2023 www.taowenge.com 淘文阁