c语言输入输出函数.ppt

上传人:牧羊曲112 文档编号:5426561 上传时间:2023-07-05 格式:PPT 页数:36 大小:544KB
返回 下载 相关 举报
c语言输入输出函数.ppt_第1页
第1页 / 共36页
c语言输入输出函数.ppt_第2页
第2页 / 共36页
c语言输入输出函数.ppt_第3页
第3页 / 共36页
c语言输入输出函数.ppt_第4页
第4页 / 共36页
c语言输入输出函数.ppt_第5页
第5页 / 共36页
点击查看更多>>
资源描述

《c语言输入输出函数.ppt》由会员分享,可在线阅读,更多相关《c语言输入输出函数.ppt(36页珍藏版)》请在三一办公上搜索。

1、第3章 输入输出函数,3.1 求整数的各位数字和3.2 温度转换3.3 字母大小写转换3.4 综合应用实例,3.1 求整数的各位数字和,3.1.1 程序解析 例 3-1 给出一个三位数的整数,求出该整数的3个数字之和。,程序代码#include void main()int x,a,b,c,s;printf(“请输入一个三位数:”);scanf(“%3d”,3.1 求整数的各位数字和,printf()函数的功能是向系统显示器输出若干个任意类型的数据。1.printf()函数调用形式 printf(格式控制字符串,输出列表)调用输入输出函数加头文件#include 注意:对于printf()和s

2、canf(),在.C文件中可省略,在.cpp文件中要加上。,3.1.2 格式化输出函数 printf(),格式说明,一般字符按原样输出,转义字符作用:换行,输出列表,printf(a=%d n,a);,printf函数简例,3.1 求整数的各位数字和,格式控制字符串和输出列表都是函数的参数,其中:(1)格式控制字符串包括两个信息 格式说明符。由“%”开头,以格式字符结束的一串字符,如%d,%c,%f等。作用是将要输出的数据转化成指定的格式输出。原样输出字符,含一般字符和转义字符。一般起提示、分隔数据和换行等作用。如例3-1中双引号内的n和c=(printf(“nc=%dn”,c);)(2)输出

3、列表是要输出的常量、变量、函数、表达式。,3.1 求整数的各位数字和,格式说明符的一般形式:%-+0#整数m.整数nl或h 格式字符,格式字符表,#include main()int a,b,c;a=1234;b=5678;c=a+b;printf(a+b=%d+%d=%dn,a,b,c);printf(“a+b=%hd+%hd=%hdn”,a,b,c);printf(a+b=%2d+%2d=%5dn,a,b,c);printf(a+b=%02d+%02d=%05dn,a,b,c);,【例3-2】分析下面程序运行结果,#include main()unsigned short a=65535;

4、short int b=-2;printf(a=%hd,%ho,%hx,%hun,a,a,a,a);printf(b=%hd,%ho,%hx,%hun,b,b,b,b);,【例3-3】无符号数据的输出,注意:去掉h后的运行结果,#include main()double x,y,z;x=123.234;y=-0.000345;z=-98.567;printf(“x=%lf,x=%.4lf,x=%2lf,x=%+e n”,x,x,x,x);printf(y=%lf,y=%+lf,y=%len,y,y,y);printf(z=%fn,z);,【例3-4】分析下面程序运行结果,#include ma

5、in()printf(n%c,a);/*输出单个字符*/printf(n%s,abc);/*输出一个字符串*/,【例3-5】分析下面程序运行结果,程序代码#include int main(void)float F,C;printf(“请输入一华氏温度:”);scanf(“%f”,3.2.1 程序解析 例 3-6 输入一个华氏温度,要求输出转换后的摄氏温度。,3.2 求华氏温度对应的摄氏温度,3.2.2 格式化输入函数scanf,scanf()函数是从键盘上将数据按用户指定的格式输入并赋给指定变量。1.函数调用形式 scanf(格式控制字符串,地址列表);格式控制字符串的定义与使用方法和pri

6、ntf函数相似,但不能显示非格式字符串,即不能显示提示字符串。地址列表是要赋值的各变量地址,地址是由地址运算符“&”后跟变量名组成,如&x表示变量x的地址。,格式说明符以%开始,后面跟一个格式符,中间可以有若干个附加字符,一般形式为:%输入数据宽度m长度 类型:表示输入的数值不赋给相应的变量,即跳过该数据不读。输入数据宽度m:表示按十进制正整数m的宽度输入数据。长度:长度格式符为l和h,l表示输入长整型数据或双精度实型数据;h表示输入短整型数据。类型:是格式说明符中必须要有的,其格式符的意义与printf函数基本相同,具体如表3-3所示。,2.格式说明符,scanf 函数常用类型格式符,例3-

7、7 按指定宽度输入整数,#include main()int a,b,c;printf(“请输入10位数:”);/*按长度m进行输入*/scanf(%3d%3d%4d,#include main()double a,b,c;printf(请输入两个双精度数:);scanf(%lf,%lf,例3-8 double 型数据的输入输出,#include void main()char c1,c2;printf(“请输入两个字符数:)scanf(%c%c,例3-9 字符型数据的输入输出,#include main()int x,y;scanf(%2d%*3d%4d,,例3-10 格式符*的作用,注意,

8、(1)scanf函数中的“格式控制字符串”后面应该是变量地址,而不应是变量名。如scanf(“%d,%d”,a,b);是错误的,则键盘输入:a=12,b=-2 其他任何输入形式都不正确。,(4)输入数据时,遇以下情况认为该数据输入结束:按指定的宽度结束;遇空格,或“回车”键,或“Tab”键;遇非法输入。(5)在用“%c”格式输入字符时,所有输入的字符(包括空格字符和“转义字符”)都作为有效字符。(6)当输入的数据与输出的类型不一样时,虽然编译没有提示出错,但结果将不正确。,/*输入输出类型不一致*/#include main()int a;scanf(%hd,例3-11 分析下面程序,C语言为

9、字符定义了输入函数getchar()和输出函数putchar()。在使用这两个函数时,程序的头部一定要加上文件包含命令:#include,1.字符输入函数getchar()getchar()的功能是从标准设备(键盘)上读入一个字符。其一般调用形式 getchar();语句ch=getchar()和 scanf(“%c”,功能相同,3.2 字母大小写转换,3.2 字母大小写转换,3.3.1 程序解析 例 3-12 输入一个英文小写字母,输出该字母所对应的大写字母。,程序代码#include void main()char c1;printf(“请输入一小写字母:”);c1=getchar();/

10、*与scanf(“%c”,C语言为字符定义了输入函数getchar()和输出函数putchar()。在使用这两个函数时,程序的头部一定要加上文件包含命令:#include,1.字符输入函数getchar()getchar()的功能是从标准设备(键盘)上读入一个字符。其一般调用形式 getchar();语句ch=getchar()和 scanf(“%c”,功能相同,3.2 字母大小写转换,#include main()char c1,c2;printf(“请输入两个字符:”);c1=getchar();c2=getchar();/*和scanf(“%c”,【例3-13】字符输入函数的使用,2.字

11、符输出函数putchar(),字符输出函数putchar()的功能是向标准输出设备(显示器)输出一个字符。调用形式:putchar(c);其中:c是参数,整型或字符型。当是整数时,输出以该数值作为ASCII码所对应字符;当是字符时,直接输出字符常量。putchar(c)和 printf(“%c”,c)功能相同,#include main()char x,y,z;x=a;y=+;z=b;putchar(x);putchar(y);putchar(z);putchar(132);putchar(n);printf(“%c%c%c132n”,x,y,z);,【例3-14】字符输出函数的使用,【例3-

12、15】从键盘上输入两个整数放入变量a,b中,编程将这两个变量中的数据交换。【分析】两个数据交换,不能直接写成a=b;b=a;,因为当执行a=b;后,变量a中的原值就被“冲”掉了,而与变量b中的值相等,因此不能实现交换。正确的做法是另定义一个变量(假设是c)作为暂存单元,在执行a=b;之前,先将变量a的值放入c中保存起来,然后执行a=b;,最后再执行b=c;,由于c中保存的是a的值,这样就将原来a的值赋给了b,从而实现了两个变量中的数据交换。,3.4 综合应用实例,程序,#include main()int a,b,c;a=3;b=5;c=a;a=b;b=c;printf(a=%d,b=%dn,

13、a,b);,变量交换,可不用中间变量,用如下方法:(1)a=a+b;b=a-b;a=a-b;(2)a=ab;b=ab;a=ab;,#include#include main()float a,b,c,s,area;scanf(%f%f%f,,【例3-16】输入三角形的三条边,编程求该三角形的面积,【例3-17】编程求方程的解,#include#include main()float a,b,c,d,x1,x2;a=3;b=-5;c=-7;d=b*b-4*a*c;x1=(-b+sqrt(d)/(2*a);x2=(-b-sqrt(d)/(2*a);printf(x1=%.4f,x2=%.4fn,x

14、1,x2);,【例3-18】分析下面程序的运行结果,#include main()int x=1,y=5;printf(x=%d,y=%d,x,y);,【分析】本程序格式控制字符串中,有两个连续的%。前面已经讲过,两个连续的%表示输出一个%,因此变量x,y没有对应的输出格式,只能输出双引号中的字符。,【例3-19】分析下面程序的运行结果,#include main()int a,b;a=0 x41;/*65*/b=+a;/*66*/printf(%d,%dn,a-,-b);printf(%c,%cn,+a,b+);,【例3-20】从键盘上输入一个英文小写字母,编程输出该字母所对应的ASCII码

15、和所对应的大写字母,【分析】在ASCII字符集中,大写字母AZ是连续的(ASCII值从6590),小写字母az也是连续的(ASCII值从97122)。每对字母的ASCII码值差是相同的,都是32,即a-A、b-B、c-C、z-Z都是32。所以将小写字母的ASCII码值减去32,则得到的是所对应的大写字母ASCII码值。同理,将大写字母的ASCII码值加上32,则得到的是所对应的小写字母ASCII码值。,#include main()char c1,c2;c1=getchar();/*从键盘获得一个小写字母*/c2=c1-32;/*将小写字母转化为大写字母*/printf(%d,%cn,c1,c1);putchar(c2);,

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 生活休闲 > 在线阅读


备案号:宁ICP备20000045号-2

经营许可证:宁B2-20210002

宁公网安备 64010402000987号