第5章 C-C++的输入输出PPT_第1页
第5章 C-C++的输入输出PPT_第2页
第5章 C-C++的输入输出PPT_第3页
第5章 C-C++的输入输出PPT_第4页
第5章 C-C++的输入输出PPT_第5页
已阅读5页,还剩56页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

第5章C/C+的输入输出,5.1C的输入输出5.2C+的输入输出,1,2020/4/25,5.1C的输入输出,5.1.1有关数据输入输出的概念5.1.2用printf函数输出数据5.1.3用scanf函数输入数据5.1.4字符数据的输入输出,2,2020/4/25,5.1.1有关数据输入输出的概念,几乎每一个C程序都包含输入输出输入输出是程序中最基本的操作之一,(1)所谓输入输出是以计算机主机为主体而言的从计算机向输出设备(如显示器、打印机等)输出数据称为输出从输入设备(如键盘、磁盘、光盘、扫描仪等)向计算机输入数据称为输入,3,2020/4/25,5.1.1有关数据输入输出的概念,(2)语言本身不提供输入输出语句输入和输出操作是由C标准函数库中的函数来实现的printf和scanf不是语言的关键字,而只是库函数的名字putchar、getchar、puts、gets,4,2020/4/25,5.1.1有关数据输入输出的概念,(3)在使用输入输出函数时,要在程序文件的开头用预编译指令#include或#includestdio.h,5,2020/4/25,5.1.2用printf函数输出数据,在C程序中用来实现输出和输入的,主要是printf函数和scanf函数这两个函数是格式输入输出函数用这两个函数时,必须指定格式,6,2020/4/25,5.1.2用printf函数输出数据,1.printf函数的一般格式printf(“一串字符”);printf(格式控制字符串,输出表列);例如:printf(“i=%d,c=%cn”,i,c);,7,2020/4/25,5.1.2用printf函数输出数据,1.printf函数的一般格式printf(格式控制字符串,输出表列)例如:printf(”i=%d,c=%cn”,i,c);,8,2020/4/25,5.1.2用printf函数输出数据,1.printf函数的一般格式printf(格式控制字符串,输出表列)例如:printf(”i=%d,c=%cn”,i,c);,可以是常量、变量或表达式,代入的是该常量、变量或表达式的值,9,2020/4/25,5.1.2用printf函数输出数据,2.常用格式字符格式符。用来输出一个有符号的十进制整数%d输出int型数据%ld输出long型数据格式符。用来输出一个字符charch=a;printf(”%c”,ch);,输出字符:a,格式符。用来输出一个字符串printf(”%s”,”CHINA”);,输出字符串:CHINA,10,2020/4/25,5.1.2用printf函数输出数据,2.常用格式字符f格式符。用来输出实数,以小数形式输出不指定数据宽度和小数位数,用%f例3.6用%f输出实数,只能得到位小数。doublea=1.0;printf(”%fn”,a/3);,11,2020/4/25,5.1.2用printf函数输出数据,2.常用格式字符f格式符。用来输出实数,以小数形式输出指定数据宽度和小数位数。用%m.nfprintf(%20.15fn,1/3);printf(%.0fn”,10000/3.0);,12,2020/4/25,5.1.2用printf函数输出数据,2.常用格式字符f格式符。用来输出实数,以小数形式输出,#includevoidmain(void)printf(%6d%6.2lfn,15,23.6);printf(%6d%6.2lfn,123,3.156);printf(%-6d%6.2lfn,15,23.6);,%6d:输入的数据共占6位,右对齐;%-6d:输出的数据共占6位,左对齐;%6.2lf:输出的数据共占6位,含小数点位,小数点后2位,右对齐,13,2020/4/25,5.1.2用printf函数输出数据,2.常用格式字符f格式符。用来输出实数,以小数形式输出floata;a=10000/3.0;printf(%fn,a);,14,2020/4/25,5.1.2用printf函数输出数据,2.常用格式字符e格式符。指定以指数形式输出实数%e,C给出小数位数为位指数部分占5列小数点前必须有而且只有1位非零数字printf(”%e”,123.456);输出:1.234560e+002,15,2020/4/25,5.1.2用printf函数输出数据,2.常用格式字符e格式符。指定以指数形式输出实数%m.neprintf(”%13.2e”,123.456);输出:1.23e+002(前面有4个空格),16,2020/4/25,5.1.3用scanf函数输入数据,1.scanf函数的一般形式scanf(格式控制,地址表列),17,2020/4/25,5.1.3用scanf函数输入数据,1.scanf函数的一般形式scanf(格式控制,地址表列),18,2020/4/25,5.1.3用scanf函数输入数据,2.scanf函数中的格式声明与printf函数中的格式声明相似以开始,以一个格式字符结束,中间可以插入附加的字符scanf(a=%f,b=%f,c=%f,19,2020/4/25,5.1.3用scanf函数输入数据,3.使用scanf函数时应注意的问题scanf(”%f%f%f”,a,b,c);错scanf(”%f%f%f”,132错a=1,b=3,c=2对a=1b=3c=2错,20,2020/4/25,5.1.3用scanf函数输入数据,3.使用scanf函数时应注意的问题对于scanf(”%c%c%c”,abc对abc错,21,2020/4/25,5.1.4字符数据的输入输出,1.用putchar函数输出一个字符从计算机向显示器输出一个字符putchar函数的一般形式为:putchar(c),22,2020/4/25,5.1.4字符数据的输入输出,例先后输出BOY三个字符。解题思路:定义3个字符变量,分别赋以初值B、O、Y用putchar函数输出这3个字符变量的值,23,2020/4/25,5.1.4字符数据的输入输出,#includeintmain()chara=B,b=O,c=Y;putchar(a);putchar(b);putchar(c);putchar(n);return0;,向显示器输出字符B,向显示器输出换行符,24,2020/4/25,5.1.4字符数据的输入输出,#includeintmain()chara=B,b=O,c=Y;putchar(a);putchar(b);putchar(c);putchar(n);return0;,25,2020/4/25,5.1.4字符数据的输入输出,putchar(101)(输出字符)putchar()(输出单撇号字符),26,2020/4/25,5.1.4字符数据的输入输出,2.用getchar函数输入一个字符向计算机输入一个字符getchar函数的一般形式为:getchar(),27,2020/4/25,5.1.4字符数据的输入输出,例从键盘输入BOY三个字符,然后把它们输出到屏幕。解题思路:用3个getchar函数先后从键盘向计算机输入BOY三个字符用putchar函数输出,28,2020/4/25,5.1.4字符数据的输入输出,#includeintmain()chara,b,c;a=getchar();b=getchar();c=getchar();putchar(a);putchar(b);putchar(c);putchar(n);return0;,输入一个字符,送给变量a,29,2020/4/25,5.1.4字符数据的输入输出,#includeintmain()chara,b,c;a=getchar();b=getchar();c=getchar();putchar(a);putchar(b);putchar(c);putchar(n);return0;,putchar(getchar();,30,2020/4/25,5.1.4字符数据的输入输出,#includeintmain()chara,b,c;a=getchar();b=getchar();c=getchar();putchar(a);putchar(b);putchar(c);putchar(n);return0;,putchar(getchar();,putchar(getchar();,31,2020/4/25,5.1.4字符数据的输入输出,#includeintmain()chara,b,c;a=getchar();b=getchar();c=getchar();putchar(a);putchar(b);putchar(c);putchar(n);return0;,putchar(getchar();,putchar(getchar();,putchar(getchar();,32,2020/4/25,5.1.4字符数据的输入输出,#includeintmain()chara,b,c;a=getchar();b=getchar();c=getchar();putchar(a);putchar(b);putchar(c);putchar(n);return0;,putchar(getchar();,putchar(getchar();,putchar(getchar();,33,2020/4/25,补充例题:,字符变量用类型符char定义字符变量charc=?;系统把“?”的ASCII代码63赋给变量cprintf(”%d%cn”,c,c);输出结果是:63?,34,2020/4/25,#includeintmain()charc1,c2;c1=A;c2=c1+32;printf(%cn,c2);printf(”%dn”,c2);return0;,将字符A的ASCII代码65放到c1中,将65+32的结果放到c2中,用字符形式输出,用十进制形式输出,35,2020/4/25,#include#includeintmain()doublea,b,c,s,area;a=3.67;b=5.43;c=6.21;s=(a+b+c)/2;area=sqrt(s*(s-a)*(s-b)*(s-c);printf(a=%ftb=%ft%fn,a,b,c);printf(area=%fn,area);return0;,对边长a、b、c赋值,计算s,计算area,已知三角形三边,求面积,36,2020/4/25,#include#includeintmain()doublea,b,c,s,area;a=3.67;b=5.43;c=6.21;s=(a+b+c)/2;area=sqrt(s*(s-a)*(s-b)*(s-c);printf(a=%ftb=%ft%fn,a,b,c);printf(area=%fn,area);return0;,调用数学函数加此行,37,2020/4/25,#include#includeintmain()doublea,b,c,s,area;a=3.67;b=5.43;c=6.21;s=(a+b+c)/2;area=sqrt(s*(s-a)*(s-b)*(s-c);printf(a=%ftb=%ft%fn,a,b,c);printf(area=%fn,area);return0;,转义字符,使输出位置跳到下一个tab位置,调用数学函数加此行,38,2020/4/25,求方程的根。a、b、c由键盘输入设,39,2020/4/25,#include#includeintmain()doublea,b,c,disc,x1,x2,p,q;scanf(%lf%lf%lf,程序中调用数学函数sqrt,输入a,b,c的值,40,2020/4/25,#include#includeintmain()doublea,b,c,disc,x1,x2,p,q;scanf(%lf%lf%lf,41,2020/4/25,#include#includeintmain()doublea,b,c,disc,x1,x2,p,q;scanf(%lf%lf%lf,42,2020/4/25,#include#includeintmain()doublea,b,c,disc,x1,x2,p,q;scanf(%lf%lf%lf,43,2020/4/25,44,输入语句:cin,程序在执行期间,接收外部信息的操作称为程序的输入;而把程序向外部发送信息的操作称为程序的输出。在C+中没有专门的输入输出语句,所有输入输出是通过输入输出流来实现的。,5.2C+的输入输出,2020/4/25,45,要使用C+提供的输入输出时,必须在程序的开头增加一行:#include即包含输入输出流的头文件“iostream.h”。有关包含文件的作用,在编译预处理部分作详细介绍。,2020/4/25,46,输入十进制整数和实数,cin.,inta,b;cinab;/程序运行至此停下,等待从键盘输入变量值,键盘输入:35或:35均可。,输入语句自动过滤空白字符。,3,键盘,5,键盘,2020/4/25,47,浮点型数据同整型数据一样。,floatc,d;cincd;,charch1,ch2;cinch1ch2;,若输入:ab则ch1为a,ch2为b。,若输入:ab则ch1为a,ch2为b。,字符型变量过滤空白字符。cin格式过滤空白字符,2020/4/25,48,floata;inti1,i2;charch1,ch2;cini1ai2ch1ch2;,输入:345.6781ab,i2:1,在缺省的情况下,cin自动跳过输入的空格,换言之,cin不能将输入的空格赋给字符型变量,同样地,回车键也是作为输入字符之间的分隔符,也不能将输入的回车键字符赋给字符型变量。,a:5.578,i1:34,ch1:a,ch2:b,2020/4/25,49,若要把从键盘上输入的每一个字符,包括空格和回车键都作为一个输入字符赋给字符型变量时,必须使用函数cin.get()。其格式为:cin.get();,cin.get()从输入行中取出一个字符,并将它赋给字符型变量。这个语句一次只能从输入行中提取一个字符。,charc1;cin.get(c1);,2020/4/25,50,charch1,ch2,ch3;cin.get(ch1);cin.get(ch2);cin.get(ch3);,输入:AB,则:ch1:A,并且在输入缓冲区中保留回车键。,ch2:空格,ch3:B,空格的ASCII码为32,ch2,2020/4/25,51,输入十六进制或八进制数据,在缺省的情况下,系统约定输入的整型数是十进制数据。当要求按八进制或十六进制输入数据时,在cin中必须指明相应的数据类型:hex为十六进制;oct为八进制;dec为十进制。,2020/4/25,52,inti,j,k,l;cinhexi;/指明输入为十六进制数cinoctj;/指明输入为八进制数cink;/输入仍为八进制数cindecl;/指明输入为十进制数当执行到语句cin时,若输入的数据为:11111212,结果:i:17,j:9,k:10,l:12,2020/4/25,53,使用非十进制数输入时,要注意以下几点:1、八进制或十六进制数的输入,只能适用于整型变量,不适用于字符型变量,实型变量。,2、当在cin中指明使用的数制输入后,则所指明的数制一直有效,直到在接着的cin中指明输入时所使用的另一数制为止。如上例中,输入k的值时,仍为八进制。,2020/4/25,54,3、输入数据的格式、个数和类型必须与cin中所列举的变量类型一一对应。一旦输入出错,不仅使当前的输入数据不正确,而且使得后面的提取数据也不正确。,cina,b;,cinab;,cinab;,inta,b;,cinab;,2020/4/25,55,输出数据cout与输入cin对应的输出是cout输出流。,当要输出一个表达式的值时,可使用cout来实现,其一般格式为:cout.;其中运算符“”称为插入运算符,它将紧跟其后的表达式的值,输出到显示器当前光标的位置。,2020/4/25,56,inta=6;floatf1=12.4;chars1=“abcd”;coutatf1ts1endl;,t为转义字符Tabendl为回车或n,显示器,显示器,显示器,6,12.4,abcd,2020/4/25,57,cout将双引号中的字符串常量按其原样输出,charch1=a,ch2=b;cout“c1=“ch1t“c2=“ch2endl;,c1=ac2=b,inti1=4,i2=5;floata=3.5;cout“a*i1=“a*i1endl“a*i2=“a*i2endl;,a*i1=14a*i2=17.5,2020/4/25,58,指定输出项占用的宽度:在输出的数据项之间进行隔开的另一种办法是指定输出项的宽度。如上面的两个输出

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论