数据的输出输入
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
3.4数据的输入和输出
3.4.1输入输出的举例
利用printf函数进行数据的输出程序,现在再介绍一个包含输入和输出的程序。
3.4.2有关数据输入输出的概念
Puchar(输出字符)getchar(输入字符)
3.4.3用printf函数输出函数
在C语言中来实现输入输出的主要是printf函数和scanf函数,这两个函数是格式输入输出函数。
一,printf函数的一般格式为
printf(格式控制,输出列表)
printf(“%d,%c\n”,i,c)括号包含两部分;(1)“格式控制”是用双撇号括起来的一个字符串,称“转换控制字符串”简称字符格式串。包含两个信息。
1,格式声明,格式声明是由%和格式字符组成,如%d,%f。他的作用是将输出的数据转换为指定格式然后输出。格式声明总是以%字符开始的。
2,普通字符,普通字符即输出时需要原样输出的字符。例如上面的printf函数,中的双撇号内的逗号,空格,和换行符。也可以包含其他字符。
二,输出列表是程序需要输出的一些数据,可以是常量,变量,或表达式。
Printf(参数1,参数2,参数4.。。。。。。。。。。参数N)
参数1是是格式控制字符串,参数2,3.。。是需要的数据。在执行时将参数2以后按参数1所指定的格式输出,参数1是必须有的。
三,格式字符
(1)d格式符
用来输出一个十进制整数,可以在声明格式中指定输出数据的域宽(所占的列数)如%5d,指定数据占5列。
(2)c格式符
用来输出一个字符。
(3)s格式符
用来输出一个字符串
(4)f格式符
用来输出实数(包括但双精度,长双精度),以小数形式输出。有几种用法:1,基本型,用%f。不指定输出函数的长度,由系统根据数据的实际情况决定的列数。一般情况是,实数部分全部输出,小数部分输出6位。2,指定数据的宽度和小数位数,用%m.nf。3,输出的数据向左对齐。%-m.nf。与2的格式相同,只是当数据长度不超过m时,数据想左对齐,右端用空格表示。
(5)e格式式
输出以指数形式输出。如果不指出数据所占的宽度和数字部分的小数位数。一般情况下小数部分占6位。也可以用%m.ne。形式格式声明。其中e可以是大写。
(6)i格式符
作用与%d一样。
(7)o格式符
以八进制形式输出。其中没有符号。全都是正数。
(8)x格式符:
以十六进制输出,同样用%lx表示长型数据。
(9)u格式符:
用来输出无符号数据以十进制输出。
(10)g格式符:
输出浮点型数据,自动选择f格式或e格式,但是没有0.无意义。
3.4.4用scanf函数输入数据
1,scanf函数的一般形式
scanf(格式控制,地址列表)
与printf函数一样的的是控制格式。地址列表是由若干个地址组成的列表。可以是变量的地址也可以是字符串的首地址。
scanf函数的格式声明
以%开始,以一个格式字符结束。中间可以插入附加的字符。
*表示本输入项在读入后不符给相应的变量。
使用scanf函数的注意问题
(1)格式控制后面是变量地址,而不是变量名。
(2)有格式声明外还有其他的字符,则原样输出。
(3)再用%c格式声明中空格字符和转义字符中的字符都作为有效字符输入。如:scanf(“%c%c%c”,&c1&c2&c3);在输入时只能是abc。而不能是a b c。要是这样了系统就认为是a空格b。
(4)在输入数据时,如输入空格,回车,tab键或遇到非法字符时(不属于数值字符),认为该数据结束。如:scanf(“%d%d%d”,&a&b&c);若输入123a45b6。这就表示123 45 6分开。