已阅读5页,还剩40页未读, 继续免费阅读
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
第四章键盘输入与屏幕输出,第四章键盘输入与屏幕输出,内容提要:,字符输入输出函数格式输入输出函数,所谓输入输出是以计算机主机为主体而言的输出:从计算机向外部输出设备(显示器,打印机)输出数据。输入:从输入设备(键盘,鼠标,扫描仪)向计算机输入数据。,C语言本身不提供输入输出语句,输入和输出操作是由C函数库中的函数来实现的例如:字符输入函数:getchar字符输出函数:putchar格式输入函数:scanf格式输出函数:printf,使用库函数时,要用预编译指令#include将有关的“头文件”,即:stdio.h,包括到用户源文件中,#include或#include“stdio.h”,字符输出,字符输出函数-格式:putchar(c)-参数:c为字符或整型常量、变量或表达式功能:把字符c输出到显示器上,例:先后输出BOY三个字符。,字符输出,#includemain()chara=B,b=O,c=Y;putchar(a);putchar(b);putchar(c);putchar(n);,运行结果:BOY,字符输入,字符输入函数格式:getchar()无参数功能:接收从键盘输入的一个字符函数值为输入的字符值当输入多个字符时,多余字符作废,例:输入单个字符。#includevoidmain()charc;c=getchar();putchar(c);putchar(n);,字符输入,字符输入/输出,例:从键盘输入一个大写英文字母,将其转换为小写字母后,再显示到屏幕上。,#includemain()charch;printf(“pressakeyandthenpressenter:”);ch=getchar();ch=ch+32;putchar(ch);putchar(n);,运行结果:pressakeyandthenpressenter:Bb,getchar()没有参数getchar(ch)错,例:从键盘输入BOY三个字符,然后把它们输出到屏幕。,解题思路:用3个getchar函数先后从键盘向计算机输入BOY三个字符用putchar函数输出,字符输入/输出,#includemain()chara,b,c;a=getchar();b=getchar();c=getchar();putchar(a);putchar(b);putchar(c);putchar(n);,运行结果:BOY,字符输入/输出,#includemain()chara,b,c;a=getchar();b=getchar();c=getchar();putchar(a);putchar(b);putchar(c);putchar(n);,putchar(getchar();,字符输入/输出,#includemain()chara,b,c;a=getchar();b=getchar();c=getchar();putchar(a);putchar(b);putchar(c);putchar(n);,putchar(getchar();,putchar(getchar();,字符输入/输出,#includemain()chara,b,c;a=getchar();b=getchar();c=getchar();putchar(a);putchar(b);putchar(c);putchar(n);,putchar(getchar();,putchar(getchar();,putchar(getchar();,字符输入/输出,#includemain()chara,b,c;a=getchar();b=getchar();c=getchar();putchar(a);putchar(b);putchar(c);putchar(n);,putchar(getchar();,putchar(getchar();,putchar(getchar();,运行结果:BOY,字符输入/输出,格式化输出,格式输出函数:printf(“格式控制字符串”);printf(“格式控制字符串”,输出参数表);,普通字符或转义序列格式命令:以%开始,%(格式修饰符)格式字符,用于指定输出格式,输出表列:要输出的数据(多个时以“,”分隔)格式控制字符串:,格式化输出,例:printf(“pressakeyandthenpressenter:”);,printf(“a=%db=%fn”,a,b);,转义字符,普通字符串,格式说明,输出参数表,例:printf(“welcomentonBeijing!n”);,输出:welcometoBeijing!,格式化输出,#includemain()charch;printf(“pressakeyandthenpressenter:”);ch=getchar();ch=ch+32;printf(“%c,%dn”,ch,ch);,例:从键盘输入一个大写英文字母,将其转换为小写字母后,再将转换后的小写字母及十进制ASCII码值显示到屏幕上。,结果:pressakeyandthenpressenter:Bb,98,格式字符,函数printf()的格式转换说明,格式修饰符,函数printf()的附加格式转换说明,格式化输出,%-0m.nl/hd(x),格式说明引导符号,指定左对齐输出,指定空位填0,指定输出域及精度,输出长度修正,指定输出数据类型,格式字符,格式修饰符,%格式符,用来输出十进制整数。几种用法:按十进制整型数据的实际长度输出。md:m为指定的输出字段的宽度。如果数据的位数小于m,则左端补以空格,若大于m,则按实际位数输出。例:printf(4d,4d,a,b);若a123,d12345,则输出结果为123,12345ld:输出长整型数据。例:longa135790;/*定义a为长整型变量*/printf(ld,a);,%格式符,以八进制整数形式输出。例:inta=-1;printf(%d,%o,a,a);-1在内存单元中的存放形式(以补码形式存放)如下:1111111111111111输出为:-1,177777对长整数(long型)可以用“lo”格式输出。还可以指定字段宽度,例:printf(8o,a);输出为:177777。(数字前有2个空格),%s格式符,输出字符串。,s。例如:printf(s,CHINA)输出字符串“CHINA”(不包括双引号)。%ms,输出的字符串占m列,若串长大于m,则全部输出,若串长小于m,则左补空格。%-ms,若串长小于m,字符串向左靠,右补空格。%m.ns,输出占m列,只取字符串中左端n个字符,字符串向右靠,左补空格。%-m.ns,n个字符输出在m列的左侧,右补空格,若nm,m自动取n值。,例4.5字符串的输出。#includevoidmain()printf(“%3sn%7.2sn%.4sn%-5.3sn”,“CHINA”,“CHINA”,“CHINA”,“CHINA”);,%格式符,用来以小数形式输出实数(包括单双精度)有以下几种用法:f。不指定字段宽度,由系统自动指定字段宽度,使整数部分全部输出,并输出6位小数。应当注意,在输出的数字中并非全部数字都是有效数字。单精度实数的有效位数一般为7位。m.nf。指定输出的数据共占m列,其中有n位小数。如果数值长度小于m,则左端补空格。-m.nf与m.nf基本相同,只是使输出的数值向左端靠,右端补空格。,输出实数时的有效位数。#includevoidmain()float,;111111.111;222222.222;printf(f,);,例4.8输出实数时指定小数位数。#includevoidain()floatf=123.456;printf(“%fn%10fn%10.2fn%.2fn%-10.2fn”,f,f,f,f,f);,%e格式符,指定以指数形式输出实数VC+给出小数位数为6位指数部分占5列小数点前必须有而且只有1位非零数字printf(”%e”,123.456);输出:1.234560e+002,%m.neprintf(”%13.2e”,123.456);输出:1.23e+002(前面有4个空格),例:m.n,格式化输出,例:inta=1234;floatf=123.456;charch=a;printf(“%8dn%2dn”,a,a);printf(“%fn%8fn%8.1fn%.2fn%.2en”,f,f,f,f,f);printf(“%3cn”,ch);,例:-,格式化输出,inta=1234;floatf=123.456;staticcharc=“Hello,world!”;printf(“%8dn%-8dn”,a,a);printf(“%10.2fn%-10.1fn”,f,f);printf(“%10.5sn%-10.3sn”,c,c);,格式化输出,printf(”%f”,1.0/3);,printf(%20.15f,1/3);,printf(%.0f”,10000/3.0);,printf(%e,123.456);,格式化输入,格式输入函数:格式:scanf(“格式控制字符串”,功能:按指定格式从键盘读入数据,存入地址表指定的存储单元中,并按回车键结束,例:scanf(“%d,%f”,普通字符,格式说明,地址表,格式化输入,函数scanf()的格式转换说明,格式化输入,函数scanf()的附加格式转换说明,注意:(1)函数scanf()没有精度修饰符.n,即用scanf()输入实型数据时不能规定精度。(2)数据输入遇到空格、回车符、制表符(Tab)、遇到非法字符输入,或到达输入域宽度时认为输入数据结束。,格式化输入,%*ml/hd(x),格式说明起始符号,附加说明符,域宽说明符,长度修正,输入数据类型,格式化输入,使用scanf函数应注意:(1)输入数据时不能规定精度(2)如果在“格式控制字符串”中储量格式说明以外还有其它字符,则在输入数据时应该输入与这些字符相同的字符(3)在用%c格式输入字符时,空格字符和转义字符都作为有效字符输入例:scanf(“%c%c%c”,输入:abc则c1=a,c2=“”,c3=b,格式化输入,使用scanf函数时常见错误(1)scanf(“%f%f%f”,a,b,c);错scanf(“%f%f%f”,错,格式化输入,例:#includemain()inta,b;printf(“pleaseinputaandb:”);scanf(“%2d%*2
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 发展低碳经济加快生态文明建设
- 产品全生命周期追溯管理规定
- 2025年超市、便利店商品理货员岗位技能知识考试题库(附含答案)
- 2025年度河北省机关事业单位技术工人晋升高级工考试练习题及答案
- 2025企业办公室租赁合同范本全文
- 2025年下半年唐山市路南区城管协管人员招聘易考易错模拟试题(共500题)试卷后附参考答案
- 2025年下半年吉林省延边州延吉市事业单位招聘急需紧缺工作人员105人(2号)易考易错模拟试题(共500题)试卷后附参考答案
- 2025房屋交易担保借款合同范本
- 2025商业店铺租赁合同协议书
- 2025年下半年厦门海洋研究所招考工作人员(4名)易考易错模拟试题(共500题)试卷后附参考答案
- 2025-2030基于数字孪生的焊接机器人虚拟调试平台建设实践
- 放疗基本知识介绍教案(2025-2026学年)
- 厂房网状围墙施工方案
- 11.《牛郎织女》(二) 课件 2025-2026学年 统编版语文五年级上册
- 洁净煤发电技术
- 月子会所食品安全应急预案
- 骨科新进展课件
- 警察抓捕战术课件
- 2025年江苏省农垦集团有限公司人员招聘笔试备考及答案详解(各地真题)
- 加油站监理实施细则
- 患者身份识别管理标准WST840-2025学习解读课件
评论
0/150
提交评论