printf语句除了可以输出一个变量的值,也可以输出多个变量的值。胖头老师用幻灯片展示了以下内容。
“前面介绍的printf用法,格式符只有一个。下面我们把printf的用法扩展成如下这样,以支持多个参数。”胖头老师翻到幻灯片的下一页。
格式控制字符串由以下3种符号组成。
(1)格式符,如“%d”“%c”“%f”,格式符决定变量以什么形式输出。
(2)转义序列,如“\n”代表换行。
(3)普通字符,原样输出,不需要做转换。
格式控制字符串中的格式符与参数是一一对应的,参数既可以是变量,也可以是表达式。
糖糖和豆豆听完了胖头老师对printf的详细介绍,还是云里雾里。于是,胖头老师给出了一个例子。
运行结果如下。
这里printf函数的运行过程如下。
(1)处理第一个格式符“%d”,把第一个参数a转换成十进制形式输出。
(2)输出逗号。
(3)处理第二个格式符“%c”,把第二个参数b转换成字符输出。
(4)遇到换行符“\n”,另起一行输出。
(5)处理第三个格式符“%.1f”,“%.1f”中的“1”代表只保留一位小数,于是把第三个参数c以小数的形式输出,并保留一位小数。
这个过程如图4.3所示。
图4.3 printf根据占位符输出内容
“printf函数就像图里的机器人一样,按顺序匹配格式符和参数,进行转换输出。现在明白它的用法了。”豆豆豁然开朗。
常用的printf函数格式符汇总如表4.1所示。
表4.1 常用的printf函数格式符
练习题
(1)找出以下代码中的错误。
(2)阅读程序写结果。
(3)请编写程序,用printf输出以下图案。