实型常量就是浮点型数;
两种表现形式:
- 十进制小数形式 如:1.0 -2.123 0.1548
- 指数形式
格式:
±m[.n]
E|e±s
( 表示±m.n× )
如:+2.0e-11 -3.1458E+698
表示控制字符
\b 退格
\r 回车
n所以,在C语言中字符型数据和整型数据之间可以通用。即:
n
Ø
允许对整型变量赋字符值。
n
Ø
允许对字符变量赋整型值。
n
Ø
允许把字符变量按整型量输出。
n
Ø
允许把整型量按字符量输出。
Ø允许字符量与整型量进行运算
C语言没有逻辑型数据。因此,
在返回逻辑值时:
用1表示“真”,用0表示“假”;
在判断逻辑值时:
用非
0
代表“真”,用
0
代表“假”
6、说说'A'与"A"有什么区别?
C语言中的单引号和双引号含义迥异,用单引号引起的一个字符实际上代表一个整数,整数值对应于该字符在编译器采用的字符集中的序列值,因此,采用ASCII字符集的编译器而言,‘a’的含义与97严格一致。而用双引号引起的字符串,代表的却是一个指向无名数组起始字符的指针,该数组被双引号之间的字符以及一个额外的二进制值为零的字符‘\0’初始化。
三目运算
A=[表达式]?a:b;等价于if(表达式)A=a;else A=b;
例子:
A>b?max=a:max=b
用于输出的修饰符
(1) d格式字符
%d:按整型数据的实际长度输出
%md:m为指定的输出长度。如果数据位小于m,则左端补以空格;大于m,则按实际位输出。
%ld:输出长整型数据。
Ø%d的输出范围为-32768~32767,输出超过该范围的整型数就会出错,此时用%ld输出。
Ø其输出格式和功能与%d相同,如:
%
8ld
(2) o格式字符
以八进制数形式输出整数,且不带符号。
对于长整数可用“%
lo”
输出。功能同十进制输出
(3) x格式字符
以十六进制数形式输出整数,且不带符号。
对于长整数可用“%
lx”
输出。功能同十进制输出
用%o,%x输出负数时会发生错误
(4) u格式字符
用来输出unsigned型数据,即无符号数,输出十进制数。
出unsigned型数据,即无符号数,输出十进制数。
•输入格式符带有
* :表示该数据不赋值。
例:scanf("%d%*d%d",&a, &c);
键入: 12 34 567 ¿
则 a=12, c=567, 34未赋值。
格式:
±m[.n]
E|e±s
( 表示±m.n× )
如:+2.0e-11 -3.1458E+698
表示控制字符
\b 退格
\r 回车
n所以,在C语言中字符型数据和整型数据之间可以通用。即:
n
Ø
允许对整型变量赋字符值。
n
Ø
允许对字符变量赋整型值。
n
Ø
允许把字符变量按整型量输出。
n
Ø
允许把整型量按字符量输出。
Ø允许字符量与整型量进行运算
C语言没有逻辑型数据。因此,
在返回逻辑值时:
用1表示“真”,用0表示“假”;
在判断逻辑值时:
用非
0
代表“真”,用
0
代表“假”
6、说说'A'与"A"有什么区别?
C语言中的单引号和双引号含义迥异,用单引号引起的一个字符实际上代表一个整数,整数值对应于该字符在编译器采用的字符集中的序列值,因此,采用ASCII字符集的编译器而言,‘a’的含义与97严格一致。而用双引号引起的字符串,代表的却是一个指向无名数组起始字符的指针,该数组被双引号之间的字符以及一个额外的二进制值为零的字符‘\0’初始化。
三目运算
A=[表达式]?a:b;等价于if(表达式)A=a;else A=b;
例子:
A>b?max=a:max=b
用于输出的修饰符
(1) d格式字符
%d:按整型数据的实际长度输出
%md:m为指定的输出长度。如果数据位小于m,则左端补以空格;大于m,则按实际位输出。
%ld:输出长整型数据。
Ø%d的输出范围为-32768~32767,输出超过该范围的整型数就会出错,此时用%ld输出。
Ø其输出格式和功能与%d相同,如:
%
8ld
(2) o格式字符
以八进制数形式输出整数,且不带符号。
对于长整数可用“% lo” 输出。功能同十进制输出(3) x格式字符
以十六进制数形式输出整数,且不带符号。
对于长整数可用“%
lx”
输出。功能同十进制输出
用%o,%x输出负数时会发生错误
(4) u格式字符
用来输出unsigned型数据,即无符号数,输出十进制数。
出unsigned型数据,即无符号数,输出十进制数。
•输入格式符带有
* :表示该数据不赋值。
例:scanf("%d%*d%d",&a, &c);
键入: 12 34 567 ¿
则 a=12, c=567, 34未赋值。