4.1. 表达式后缀分号称作表达式语句,即,
表达式;
4.2. putchar、getchar、printf、scanf等输入输出函数的原型在头文件stdio.h中。
4.3. 函数putchar和getchar的格式和功能如下:
(1) putchar
格式:putchar(表达式)
功能:向标准输出设备输出以指定表达式的值为ASCII码的字符,并以该值为函数值(自动强制转换为int型)。
(2) getchar
格式:getchar()
功能:从标准输入设备输入一个字符,并以该字符为函数值。
注意:getchar可提取空格及回车、Tab等部分控制字符,而且只提取输入中相应位置上的一个字符,因此,输入字符间无须分隔,否则也被视为输入字符。
4.4. printf函数的格式和功能如下:
格式:printf(格式控制串, 输出表列)
功能:
(1) 从右至左依次计算输出表列中各表达式的值;
(2) 从左至右依次输出格式控制串中的字符,其中,%引导的格式控制符由输出表列中相应表达式的值所取代。
输出表列是一组用逗号分隔的表达式(又称输出项,可以为0项)。格式控制串为字符串型数据(可以是表达式)。其中,格式符用于控制输出表列中相应表达式的输出格式。格式符及其功能如下表所示:
表4.1 printf格式字符
格式符 | 说明 |
d或i | 有符号十进制短整数(不输出正号) |
u | 无符号十进制短整数 |
o | 无符号八进制短整数(无前缀0) |
x或X | 无符号十六进制短整数(无前缀0x,数字的大小写与x相同) |
c | 字符 |
s | 字符串 |
f | 定点数(默认6位小数)。 |
e或E | 浮点数(浮点数中e的大小写与格式符e的大小写相同) |
g或G | %f和%e中输出宽度较短者(e与g的大小写相同) |
附加格式符 | 说明 |
l | 插在%和d、i、u、o、x、X之间,表示输出相应长整数。 |
整数 | 插在%和其它格式符之间,前一个整数的绝对值为输出数据的宽度,后一个整数控制实际输出位数:①输出整数时,指定输出位数,不足左补0,超出保留;②输出实数时,指定输出小数位数,不足右补0,超出四舍五入;③输出字符串时,指定输出字符数。另外,第一个整数为负时,输出数据左对齐,否则右对齐。 |
.整数 | |
整数.整数 |
4.5. scanf函数的格式和功能如下:
格式:scanf(格式控制串, 地址表列)
其中,格式控制串为字符串型数据(可以是表达式),地址表列是一组用逗号分隔的地址。
功能:
(1) 右至左依次计算地址表列中各表达式的值;
(2) 从标准输入设备提取数据,并从左至右依次存储到所指定的存储单元。
(3) 地址表列中的地址可用表达式表示,通常形式为:
&变量
其中&是地址运算符,它表示取其后变量的存储(起始)地址。
说明:
(1) scanf函数格式符与printf函数的格式符的功能相似。scanf的合法格式符不区分大小写、实型格式符均等效,另外,
表4.2 scanf的附加格式符说明
附加格式符 | 说明 |
正整数 | 指定输入数据的最大宽度(插在%与其它格式符之间) |
* | 跳过当前一个数据(插在%与其它格式符之间) |
*正整数 | 跳过当前指定个字符(插在%与其它格式符之间) |
(2) 如果格式控制串中有非格式符,则输入数据中对应位置上必须是该字符,且被跳过,这为指定数据间分隔符提供了方便。
(3) printf和scanf格式控制串中的每对%%(从左至右结合)按一个普通字符%对待。