3.3格式化输出函数printf()
程序运行中,有时候需要从外部设备(例如键盘)上得到一些原始数据,而程序计算结束后,通常要把计算结果发送到外部设备(例如显示器)上以便人们对结果进行分析。我们把程序从外部设备上获得数据的操作称为“输入”,而把程序发送数据到外部设备的操作称为“输出”。不像其他的高级语言,C语言没有专门的输入/输出语句,输入/输出的操作是通过调用C语言的库函数来实现的。printf()函数是最常用的输出函数,它的作用是向计算机系统默认的输出设备(一般指显示器)输出一个或多个任意指定类型的数据。
3.3.1printf()函数的一般格式
调用printf()函数的一般格式如下:
printf("格式字符串",输出项表);
例如:
printf("n=%3d,f=%5.1f\n,c=%c",n,f,c);
其中,“格式字符串”也称为格式控制字符串或格式转换字符串,可以包含下列三种字符:
·格式指示符。例如“%3d”、“%5.1f”和“%c”等,这些字符用来控制数据的输出格式。
·转义字符。这些字符通常用来控制光标的位置。
·普通字符。除格式指示符和转义字符之外的其他字符,这些字符输出时原样输出,例如上面例子中的“n=”等。
“输出项表”由若干个输出项构成,输出项之间用逗号来分隔,每个输出项既可以是常量、变量,也可以是表达式。有时候,调用printf()函数也可以没有输出项。在这种情况下,一般用来输出一些提示信息,例如:
printf("China\n");
在C++中,cout表示标准输出流对象,用于屏幕输出,“<
cout << "China\n";
由于定义插入符“<”预处理命令。
3.3.2格式指示符
格式指示符的一般形式如下:
%[修饰符]格式字符
1.格式字符
printf函数中常用的格式字符及其说明如表3-1所示。
表3-1printf()函数常用的格式字符及其说明
格式字符
说明
c
输出一个字符
d或i
输出带符号的十进制整数(正数不输出符号)
o
以八进制无符号形式输出整数(不输出前导符0)
x或X
以十六进