c语言概述-第03章.ppt

上传人(卖家):晟晟文业 文档编号:4448674 上传时间:2022-12-10 格式:PPT 页数:28 大小:113.75KB
下载 相关 举报
c语言概述-第03章.ppt_第1页
第1页 / 共28页
c语言概述-第03章.ppt_第2页
第2页 / 共28页
c语言概述-第03章.ppt_第3页
第3页 / 共28页
c语言概述-第03章.ppt_第4页
第4页 / 共28页
c语言概述-第03章.ppt_第5页
第5页 / 共28页
点击查看更多>>
资源描述

1、c语言概述第03章1、字符输出函数、字符输出函数putchar()作用:向终端输出一个字符作用:向终端输出一个字符 格式:格式:putchar(c);说明:将字符变量说明:将字符变量c输出输出 其中其中c可以是可以是int 或或 char(包括转义字符包括转义字符)#include main()char a,b,c;a=B;b=O;c=Y;putchar(a);putchar(b);putchar(c);输出结果:输出结果:BOY#include main()char a,b,c;a=B;b=O;c=Y;putchar(a);putchar(n);putchar(b);putchar(n);p

2、utchar(c);putchar(n);输出结果:输出结果:B O Yputchar(?);2、字符输入函数、字符输入函数 getchar()作用:从终端输入一个字符作用:从终端输入一个字符 格式:格式:getchar();说明:没有参数,函数值是从终端得到的字符说明:没有参数,函数值是从终端得到的字符#include main()char c;c=getchar();putchar(c);输入:输入:c输出:输出:c注意:注意:1、getchar()只能接收一个字符只能接收一个字符2、getchar()函数得到的字符可以函数得到的字符可以 赋给字符变量赋给字符变量 例如例如:char c;

3、c=getchar();赋给整型变量赋给整型变量 例如:例如:int c;c=getchar();作为表达式的一部分作为表达式的一部分 例如:例如:putchar(getchar();1、格式输出函数、格式输出函数printf()作用:向终端输出若干个任意类型数据作用:向终端输出若干个任意类型数据 区分:区分:putchar函数:只能输出字符,且只能输出一个字符函数:只能输出字符,且只能输出一个字符 printf函数:可以输出多个数据,且为任意类型函数:可以输出多个数据,且为任意类型 格式:格式:printf(格式控制,输出表列)(格式控制,输出表列)格式控制:用双引号括起来的字符串,包括格式

4、控制:用双引号括起来的字符串,包括两个信息:两个信息:格式说明格式说明:由:由“%”和格式字符组成,和格式字符组成,%d,%f,%u等等 作用:将输出数据转换成指定的格式输出作用:将输出数据转换成指定的格式输出 普通字符普通字符:需要原样输出的字符。:需要原样输出的字符。输出表列:需要输出的一些数据,可以是表达式输出表列:需要输出的一些数据,可以是表达式例:例:printf(“a=%d,b=%d”,a,a+b);格式说明格式说明 输出表列输出表列格式字符:对不同类型的数据用不同的格式字符格式字符:对不同类型的数据用不同的格式字符(1)d格式符格式符%d:按整形数据的实际长度输出:按整形数据的实

5、际长度输出%md:m为指定输出字段宽度,如数据的位数小于为指定输出字段宽度,如数据的位数小于m,则则 左左 端补空格,若大于端补空格,若大于m,按实际位数输出,按实际位数输出 a=123,d=12345 printf(“%4d,%4d”,a,d);结果:结果:_123,12345输出表列:需要输出的一些数据,可以是表达式输出表列:需要输出的一些数据,可以是表达式例:例:printf(“a=%d,b=%d”,a,a+b);格式说明格式说明 输出表列输出表列格式字符:对不同类型的数据用不同的格式字符格式字符:对不同类型的数据用不同的格式字符(1)d格式符格式符%ld:输出长整型数据:输出长整型数据

6、 如用如用%d输出长整型数据就会出错输出长整型数据就会出错 long a=123456;printf(“%ld”,a);结果:结果:printf(“%8ld”,a);结果:结果:注意:注意:int型数据可以用型数据可以用%d或或%ld格式输出格式输出123456_ _ 123456(2)o格式符:以八进制数形式输出整数格式符:以八进制数形式输出整数 按八进制形式输出的数值不带符号按八进制形式输出的数值不带符号 int a=-1;printf(“%d,%o,%8o”,a,a,a);输出结果:输出结果:(3)x 格式符:以十六进制数输出整数,同样不会出现负数格式符:以十六进制数输出整数,同样不会出

7、现负数 int a=-1;printf(“%d,%o,%x”,a,a,a);输出结果:输出结果:1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1-1,177777,_ _177777-1,177777,ffff(4)u格式符:输出无符号型数据格式符:输出无符号型数据 即以十进制形式输出无符号数即以十进制形式输出无符号数 unsigned int a=65535;printf(“a=%d,%o,%x,%un”,a,a,a,a);输出结果:输出结果:int b=-2;printf(“b=%d,%o,%x,%u”,b,b,b,b);输出结果:输出结果:1 1 1 1 1 1 1 1 1

8、 1 1 1 1 1 1 11 1 1 1 1 1 1 1 1 1 1 1 1 1 1 0a=-1,177777,ffff,65535b=-2,177776,fffe,65534(5)c格式符:用来输出一个字符格式符:用来输出一个字符 char c=a;printf(“%c”,c);输出结果:输出结果:一个整数其值在一个整数其值在0255也可以用字符形式输出,同样字符型数也可以用字符形式输出,同样字符型数 据也可以用整数形式输出据也可以用整数形式输出 char c=a;int i=97;printf(“%c,%d,%c,%d”,c,c,i,i);结果:结果:printf(“%3c,%3d,%3

9、c,%3d”,c,c,i,i);结果:结果:aa,97,a,97_ _ a,_ 97,_ _ a,_ 976)s格式符:用来输出一个字符串格式符:用来输出一个字符串%s:printf(“%s”,”china”);结果:结果:%ms:输出的字符串占:输出的字符串占m列,如字符串的本身长度大于列,如字符串的本身长度大于m,则将字符串全部输出,若小于则将字符串全部输出,若小于m则左补空格则左补空格%-ms:如串长度小于:如串长度小于m,则在,则在m列范围内右补空格,列范围内右补空格,字符串左靠字符串左靠 china6)s格式符:用来输出一个字符串格式符:用来输出一个字符串%m.ns:输出占:输出占m

10、列,但只取字符串中左端列,但只取字符串中左端n个字符,个字符,字符串在字符串在m列的右侧,左侧补空格列的右侧,左侧补空格%-m.ns:如果如果nm,则,则m自动取自动取n值,值,n个字符正常输出。个字符正常输出。printf(“%3s,%7.2s,%.4s,%-5.3sn”,”china”,”china”,”china”,”china”);输出结果:输出结果:china,_ _ _ _ _ch,chin,chi _ _(7)f格式符:用来输出实数(单、双精度),以小数形式输出格式符:用来输出实数(单、双精度),以小数形式输出%f:不指定字符宽度,由系统自动指定,使整数部分:不指定字符宽度,由系

11、统自动指定,使整数部分 全部输出,并输出全部输出,并输出6位小数位小数 注意:单精度前注意:单精度前7位有效,双精度前位有效,双精度前16位有效。位有效。float x=111111.111,y=222222.222;printf(“%f”,x+y);结果:结果:333333.328125 超过超过7位无意义位无意义(7)f格式符:用来输出实数(单、双精度),以小数形式输出格式符:用来输出实数(单、双精度),以小数形式输出%m.nf:输出数据占:输出数据占8列,其中有列,其中有n位小数,位小数,如数值长度小于如数值长度小于m,则左端补空格则左端补空格%-m.nf:输出的数值向左靠近,右端补空格

12、:输出的数值向左靠近,右端补空格float f=123.456;printf(“%f _ _%10f _ _%10.2f _ _%.2f _ _%-10.2f”,f,f,f,f);结果:结果:123.456001 _ _123.456001 _ _ _ _ _ _123.46 _ _123.46 _ _ _ _(8)e格式符:以指数形式输出实数格式符:以指数形式输出实数%e:不指定输出数据所占的宽度和数字部分小数位数,由:不指定输出数据所占的宽度和数字部分小数位数,由 系统自动指定,给出系统自动指定,给出6位小数,指数部分占位小数,指数部分占4位(如位(如 e+02,其中其中e占一位,指数符号

13、占一位,指数占占一位,指数符号占一位,指数占2 位),数值按标准化指数输出,小数点前有且只有一位),数值按标准化指数输出,小数点前有且只有一 个非零数字。个非零数字。printf(“%e”,123.456);输出:输出:%m.ne和和%-m.ne:m,n字符含义与前面相同,字符含义与前面相同,n指小数部分的位数指小数部分的位数 1.234560e+02(9)g格式符:用来输出实数,根据数值的大小自动选择格式符:用来输出实数,根据数值的大小自动选择f格式格式 和和e格式,选择输出时占宽度较小的一种,且不格式,选择输出时占宽度较小的一种,且不 输出无意义的零。输出无意义的零。f=123.468;p

14、rintf(“%f,%e,%g”,f,f,f);结果:结果:123.468000,1.234680e+02,123.468使用使用printf函数时应注意:函数时应注意:(1):格式字符要用小写字母(除):格式字符要用小写字母(除X E G)%d不要写成不要写成%D(2):可以在):可以在“格式控制格式控制”字符串内包含字符串内包含“转义字符转义字符”如:如:n,t,b等。等。(3):格式说明以):格式说明以%开头,以开头,以d,o,x,u,c,s,f,e,g等等9个格式字个格式字 符结束,在格式说明中可以插入附加字符,其他字符符结束,在格式说明中可以插入附加字符,其他字符 均以原样输出。均以

15、原样输出。Printf(“c=%c,f=%f,s=%s”,c,f,s);使用使用printf函数时应注意:函数时应注意:(4):如果想输出字符:如果想输出字符“%”,则应在,则应在“格式控制格式控制”字符串字符串 中用连续两个中用连续两个%表示。表示。Printf(“%f%”,1.0/3);输出:输出:0.333333%2、格式输入函数格式输入函数scanf函数函数区分:区分:getchar函数只能用来输入一个字符函数只能用来输入一个字符 scanf函数可以用来输入任何类型的多个数据。函数可以用来输入任何类型的多个数据。形式:形式:scanf(格式控制,地址表列)(格式控制,地址表列)地址表列

16、:由若干个地址组成的表列,可以是变量的地址或地址表列:由若干个地址组成的表列,可以是变量的地址或 字符串的首地址字符串的首地址int a,b,c;scanf(“%d%d%d”,&a,&b,&c);printf(“%d,%d,%dn”,a,b,c);运行:运行:3 _ 4 _ 5 3,4,5&a,&b,&c中的中的“&”是地址运算符,是地址运算符,&a指指a在内存中的地址在内存中的地址scanf函数的作用:按函数的作用:按a,b,c在内存的地址将在内存的地址将a,b,c的值存进去。的值存进去。a,b,c的地址是在定义的地址是在定义a,b,c之后就确定了,之后就确定了,在编译阶段分配的在编译阶段分

17、配的“%d%d%d”表示按十进制整数形式输入数据,输入数据时两表示按十进制整数形式输入数据,输入数据时两个数据之间以一个或多个空格间隔,或回车键、跳格键个数据之间以一个或多个空格间隔,或回车键、跳格键tab合法的输入:合法的输入:(1)3 4 5 (2)3 4 5 (3)3(tab键键)4 5 不合法的输入:不合法的输入:3,4,5格式说明:格式说明:1、标准、标准C在在scanf中不使用中不使用%u说明符,对说明符,对unsigned型数据型数据%d,%o,%x格式输入格式输入2、可以指定输入数据所占列数,系统自动按它截取所需数据、可以指定输入数据所占列数,系统自动按它截取所需数据 scan

18、f(“%3d%3d”,&a,&b);输入:输入:123456 系统自动将系统自动将123赋给赋给 a,456赋给赋给b。3、%后的后的“*”附加说明符,用来表示跳过相应数据附加说明符,用来表示跳过相应数据 scanf(“%2d%*3d%2d”,&a,&b);输入:输入:12 345 67 a=12,b=674、输入数据时不能规定精度、输入数据时不能规定精度 scanf(“%7.2f”,a);scanf函数在执行时应注意:函数在执行时应注意:1、scanf函数中的函数中的“格式控制格式控制”后面应是变量地址,而不是后面应是变量地址,而不是 变量名变量名 scanf(“%d,%d”,a,b);sc

19、anf函数在执行时应注意:函数在执行时应注意:2、在、在“格式控制格式控制”字符串中除了格式说明外还有其他字符,字符串中除了格式说明外还有其他字符,则在输入数据时应输入与这些字符相同的字符。则在输入数据时应输入与这些字符相同的字符。scanf(“%d,%d”,&a,&b);应输入:应输入:3,4 scanf(“%d%d”,&a,&b);输入时两个数据间应空两个或多个空格输入时两个数据间应空两个或多个空格 scanf(“%d:%d:%d”,&h,&m,&s);12:34:36 scanf(“a=%d,b=%d,c=%d”,&a,&b,&c);a=12,b=34,c=563、在用、在用“%c”格式

20、输入字符时,空格字符和转义字符都作为格式输入字符时,空格字符和转义字符都作为 有效字符输入。有效字符输入。scanf(“%c%c%c”,&c1,&c2,&c3);输入输入:a b c c1=a,c2=,c3=b4、在输入数据时,遇到以下情况时该数据认为结束。、在输入数据时,遇到以下情况时该数据认为结束。(1)、遇到空格、回车、跳格键)、遇到空格、回车、跳格键(2)、遇宽度结束,如)、遇宽度结束,如%3d,只取,只取3列列(3)、遇非法输入)、遇非法输入 scanf(”%d%c%f”,&a,&b,&c);输入:输入:1234a123o.35 a b c顺序结构程序举例顺序结构程序举例 编写一个程

21、序,输入一个华氏温度,要求输出摄氏温度。公式为:c=(F-32)输出取位小数。59#includevoid main()float f,c;printf(Fahrenheit temperature:);scanf(%f,&f);c=5.0/9.0*(f-32);printf(Celsius temperature:%.2fn,c);编程从键盘输入圆的半径r,输出圆的周长和圆的面积。#define PI 3.1415926#includevoid main()float r;float l,area;printf(input radius:);scanf(%f,&r);l=2*PI*r;area=PI*r*r;printf(r=%fn,r);printf(l=%7.2f,area=%7.2fn,l,area);

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

当前位置:首页 > 办公、行业 > 各类PPT课件(模板)
版权提示 | 免责声明

1,本文(c语言概述-第03章.ppt)为本站会员(晟晟文业)主动上传,163文库仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。
2,用户下载本文档,所消耗的文币(积分)将全额增加到上传者的账号。
3, 若此文所含内容侵犯了您的版权或隐私,请立即通知163文库(发送邮件至3464097650@qq.com或直接QQ联系客服),我们立即给予删除!


侵权处理QQ:3464097650--上传资料QQ:3464097650

【声明】本站为“文档C2C交易模式”,即用户上传的文档直接卖给(下载)用户,本站只是网络空间服务平台,本站所有原创文档下载所得归上传人所有,如您发现上传作品侵犯了您的版权,请立刻联系我们并提供证据,我们将在3个工作日内予以改正。


163文库-Www.163Wenku.Com |网站地图|