C语言:格式化输入输出函数
C语言提供的格式化输入输出函数的原型在头文件stdio.h
中声明,在使用时应在程序头部包含该文件:
#include <stdio.h>
或
#include "stdio.h"
1. 格式化输出函数printf
- 功能:
-将数据按指定的格式输出到标准输出流中(如屏幕)。 - 语法格式:
-printf(格式控制字符串,输出列表);
-格式控制字符串:使用" "括起来的用于表示输出格式的字符串 (字符串中可以包含任何字符,如空格、转义字符,甚至汉字)。格式控制字符串在输出时遵循两种规则:
(1)普通字符在输出时,按原样输出。转义字符则输出它所代表的字符(一般是控制字符)。
(2)格式字符串:
一般形式:%[标志] [输出最小宽度] [.精度] [长度] 类型
方括号[删除线格式 ]中的项表示可省略项。
方括号中各项的意义如下:
1、类型
表示输出数据的类型,其格式符和意义如下表所示:
2、标志
标志字符为-、+、#、空格四种,其意义下表所示:
-:结果左对齐,右边填空格。
+:输出符号(正号或负号)。
空格:输出值为正时冠以空格,为负号时冠以符号。
#:对c、s、d、u类无影响,在输出时加前缀0;对x(X)类,在输出时加前缀0x(0X);对e、g、f类当结果有小数时才给出小数点。
3、输出最小宽度
用十进制整数来表示输出的最少位数。若实际位数多于定义的宽度,则按实际位数输出,若实际位数少于定义的宽度则左补空格(数据右对齐)。
4、精度
精度以“.”开头,后面跟十进制整数。如果输出数字,则该十进制数表示小数的位数;如果输出的是字符,则表示输出字符的个数。(实际位数大于所定义的精度数时,省略超出的部分。)
5、长度
长度格式符有h、l两种,h表示按短整型输出,l表示按长整型输出。
-输出列表:
若干要输出的数据项,可以是常量、变量或表达式,各项用逗号“,"隔开(输出项的类型应该与格式控制符一一对应)。
常用示例:
#include <stdio.h>
int main()
{
int i = 6;
int j = 100;
double d = 8.8888888; //数据宽度为9列,小数部分占7列
char ch = 'A'