3.5.2 数据的格式输入与输出
1.格式输出函数printf()
函数使用形式:printf(格式控制字符串,输出表列);
作用:将“输出表列”中的数据按照“格式控制字符串”的要求输出。
例如:
格式控制字符串包含两部分内容,即格式说明和普通字符。
(1)格式说明:由“%”和格式字符组成。如%d,%f等。作用是将要输出的数据转换成指定的格式输出。格式说明总是由“%”字符开始的。表3-8列出了printf()函数的格式字符,除了格式字符以外,printf()函数还可以使用附加格式字符,表3-9列出了printf()函数的附加格式字符,附加格式字符放在格式字符与%之间。
(2)普通字符:按照原样输出字符。
例如:
printf函数中的“a=”和“b=”是普通字符,按原样输出。输出结果是:a=10,b=8
(3)在格式控制字符串中,可以使用转义字符(详见表3-3)。
(4)格式控制字符串通常用小写字母书写,并且要用双引号标注。格式控制字符必须与输出表列一一对应,输出表列之间用逗号隔开。
表3-8
表3-9
例3.8 以带符号形式输出整数和实数。
程序如下:
程序运行结果如下:(■表示空格)
例3.9 输出长整型整数。
程序如下:
程序运行结果如下:
123456789,-13035
注意:
长整型整数必须使用L或l附加格式,否则会出错。
例3.10 用不同进制形式输出正整数。
程序如下:
程序运行结果如下:
66,102,42,B
例3.11 用不同进制形式输出负整数。
程序如下:
程序运行结果如下:
例3.12 输出字符串。
程序如下:
程序运行结果如下:(■表示空格)
china,■■chi
(5)实数输出时,如果要降低小数部分精确度,系统自动按四舍五入的方式进行取舍。
例3.13
程序如下:
程序运行结果如下:(■表示空格)
(6)如果要输出“%”,应在格式控制字符串中连续使用两个%。
例3.14
程序如下:
程序运行结果如下:(■表示空格)
(7)如果在%后面紧跟0,则多余的空位用0来填补。
例3.15
程序如下:
程序运行结果如下:
(8)如果在%后紧跟*,则输出列表中对应的数据表示后一个数据的输出宽度。
例3.16
程序运行结果如下:(■表示空格)
2.格式输入函数scanf()
作用:按照“格式控制字符串”的要求,输入变量的值。
例如:
&是地址运算符,取变量的地址值。
scanf()函数的格式控制字符串和printf()函数一样(见表3-8)。同样,scanf()函数也可以使用附加格式字符,表3-10列出了scanf()函数的附加格式字符。
(1)格式控制字符串中的普通字符按原样输入。
例3.17
程序如下:
程序运行结果如下:
(2)如果指定了输入数据所占的列数,系统自动按它截取所需数据。
表3-10
例3.18
程序如下:
程序运行结果如下:
(3)在用%c格式输入单个字符时,空格字符和转义字符都是有效的具体字符。
例3.19
程序如下:
程序运行结果如下:(■表示空格)
(4)在输入数据时,若遇到空格、回车、跳格(Tab键),系统认为数据结束;若指定了宽度,则达到宽度后结束;如果遇到非法输入,系统也认为数据结束。
(5)如果在%后紧跟*,表示对应的输入数据在输入后不赋给相应变量。
例3.20
程序如下:
程序运行结果如下:
免责声明:以上内容源自网络,版权归原作者所有,如有侵犯您的原创版权请告知,我们将尽快删除相关内容。