数据的输入输出_第1页
数据的输入输出_第2页
数据的输入输出_第3页
数据的输入输出_第4页
数据的输入输出_第5页
已阅读5页,还剩27页未读 继续免费阅读

下载本文档

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

文档简介

数据的输入输出数据的输入输出概念输出:从计算机向显示器、打印机等外部设备输出数据。输入:从标准输入设备键盘、鼠标等向计算机输入数据。注意:C语言不提供输入输出语句,输入输出操作是由C函数库中的函数实现。两个基本的输出(输入)函数格式输出(输入)函数字符输出(输入)函数

数据输出1.格式输出函数(Printf)

格式:printf(格式控制串,输出表列)说明:(1)格式控制串由双引号括起来,由“%”和格式符以及普通字符(即需要原样输出的字符组成)。

(2)输出表列是需要输出的一些数据,可以是常量、变量或表达式。[例]:

#include<stdio.h>main(){inta=3,b=4;printf(“a=%db=%d”,a,b);}运行结果:a=3b=4.格式说明符d:

以十进制带符号形式输出整型数o:以八进制无符号形式输出整型数x:以十六进制无符号形式输出整型u:以十进制无符号形式输出整型数f:以小数形式输出单、双精度实型数e:以指数形式输出单、双精度实型数c:以字符形式输出一个字符s:以字符形式输出一个字符串ld:以十进制带符号形式输出长整型数(1)

d格式符:

输出十进制整数。

%d

按整型数据的实际长度输出。

%md

m为指定的输出字段的宽度.若数据的位数小于m,则左端补以空格;若大于m,则按实际位数输出。

%ld

输出长整型数据.(2)o格式符以八进制数形式输出整数。将内存单元中的各位的值(0或1)按八进制形式输出,输出的数值不带符号,将符号也作为八进制数的一部分输出。(3)

x格式符,以十六进制数形式输出整数。(4)

u格式符,以十进制形式输出无符号型数据。[例]#include<stdio.h>main(){unsignedinta=65535;intb=-2;printf(“a=%d,%o,%x,%u\n”,a,a,a,a);printf(“b=%d,%o,%x,%u\n”,b,b,b,b);}

输出:a=-1,177777,ffff,65535b=-2,177776,fffe,65534(5)c格式符输出一个字符。

[例]

#include<stdio.h>main(){charc='a';inti=97;printf("%c,%d\n",c,c);printf("%c,%d\n",i,i);}

输出:a,97a,97

(6)s格式符输出一个字符串。

若不指定字符宽度和对齐方式,则输出全部字符串.

例如:printf("%s","CHINA");

程序运行输出:CHINA

若指定宽度m,实际字符个数大于m,按实际宽度输出;如果实际字符个数小于m,字符右对齐,左边填空格。例如:printf(“s1=%s,s2=%3s,s3=%-5.2s,s4=%.3s","abcd","abcd","abcd","abcd");

程序运行输出:

s1=abcd,s2=abcd,s3=ab,s4=abc(7)f格式符

以小数形式输出实数(包括单、双精度)。1)%f,不指定字段宽度,由系统自动指定,使整数部分全部输出,并输出6位小数(输出双精度数据,也是6位,但误差降低)。2)%m.nf,指定输出的数据共占m列,其中有n位小数.若数据长度小于m,则左端补空格。例:floatx=15.3,y=222.225111;printf(“%f,%6.2f\n”,x,y);(8)

e格式

以指数形式输出实数。

1)%e

不指定输出数据所占的宽度和数字部分小数位数,由系统自动指定给出6位小数,指数部分占5位,其中“e”占一位,指数符号占一位,指数占3位.数值按标准化指数形式输出(小数点前有1位非零数字)。例如:printf(“%e”,123.456);

输出:1.234560e+002

e格式输出的实数共占13列宽度6位3位(9)g格式符:根据数值的大小输出实数,自动选f格式或e格式(选择输出时占宽度较小的一种),且不输出无意义的零。说明.格式控制串的控制符号与变量表要一一对应,即:类型相同,个数相等2.格式控制符号用小写字母3.格式控制符号之外的符号均照原样显示4.若需显示百分号,格式为:%%5.如果实际数据所占字符位大于指定的域宽,按实际输出字符输出函数例:#include<stdio.h>(注意这不可以少)main(){chara,b,c;a=‘B’;b=‘O’;c=‘Y’;putchar(a);putchar(b);putchar(c);}输出:BOY

数据的输入

格式输入函数格式输入函数一般形式:

scanf(格式控制字符串,地址表列)

“格式控制字符串”的含义同printf函数,“地址表列”:要求是变量的地址,或字符串的首地址.例如:

inta,b,c;scanf(“%d%d%d”,&a,&b,&c);说明:*scanf函数中的“格式控制”后面应当是变量地址而不是变量名。*输入数据时,在两个数据之间以一个或多个空格间隔,也可以用回车键、跳格键tab分隔。格式控制字符串中若包含普通字符,则输入时必须照原样输入普通字符,否则将导致输入结束。如:inta,b,c;scanf(“%d,%d,%d”,&a,&b,&c);

输入:1,2,3<回车>main(){inta,b,c,d,e;scanf(“%d%c%c%c%d”,&a,&b,&c,&d,&e);printf(“a=%d,b=%c,c=%c,d=%c,e=%d”,a,b,c,d,e);}

输入:123abc789<回车>

输出:a=123,b=a,c=b,d=c,e=789在用“%c”格式输入字符时,空格字符和“转义字符”都作为有效字符输入.如,scanf("%c%c%c",&a,&b,&c);输入:xyzx字符赋给a,空格字符赋给b,y字符赋给c提示注意:

输入double型数据,必须用格式说明符%lf或%le,输入long型数据,必须用%ld。标准C在scanf中不使用%u说明符,对unsigned型数据,以%d或%o、%x格式输入。%后的“*”为附加说明符,用来表示跳过它对应的数据。输入时格式控制符中不能加“\n”。在scanf函数的格式控制字符串中尽量不要出现普通字符,尤其不能将输入提示放在其中。需要显示输入提示应该调用printf函数实现。

getchar函

温馨提示

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

评论

0/150

提交评论