- 本周主要知识点
- 数据类型(深入)
- 原码、反码、补码
- 数据特殊的表达形式
- 一些陌生的运算符
- 好题错题整理
- 判断题
- 选择题
正数的原码、补码、反码相同,即符号位是0,其余各位表示数值。
负数的原码、补码、反码则不同。
- 原码:符号位是1,其余各位表示数值的绝对值。
- 反码:符号位是1,其余各位对原码取反。
- 补码:反码加1。
- 进制
数据类型 | 输入输出形式 |
---|---|
centered 文本居中 | right-aligned 文本居右 |
1.位运算符
在C语言中,位运算符主要有如下五种:- 与运算符(&):对两个数的每一位进行与运算。如果两个位都是 1,则结果为 1,否则为 0。
- 或运算符(|):对两个数的每一位进行或运算。如果两个位中有一个是 1,则结果为 1,否则为 0。
- 异或运算符(^):对两个数的每一位进行异或运算。如果两个位中有一个是 1,另一个是 0,则结果为 1,否则为 0。
- 左移运算符(<<):将一个数的二进制位向左移动一定的位数。左移运算符的优先级比加法低,比判断运算符高。
- 右移运算符(>>):将一个数的二进制位向右移动一定的位数。右移运算符的优先级比加法低,比判断运算符高。
注意:位运算符只能用于整型变量
条件运算符(?;)
condition ? expression1 : expression2
其中,condition 是一个条件表达式,如果为真(即非 0),则运算结果为 expression1;如果为假(即 0),则运算结果为 expression2。
逗号运算符
C 语言中的逗号运算符是一种常见的运算符,它用于将两个或多个表达式连接在一起。逗号运算符的基本形式如下:expression1, expression2, ...,expressionN
逗号运算符的运算顺序是从左至右的,每个表达式都会被计算一次,但最后的运算结果只保留最后一个表达式的值。
- 1.08是正确的整型常量。(× 08作为八进制整数含有非法数字8)
- 2.若表达式sizeof(int)的值为4,则int类型数据可以表示的大整数为 2 31 − 1 2^{31} −1 231−1。 (√ int 类型数据通常占用 32 个二进制位,其中第一位用于表示正负号,剩余的 31 位用于表示数值。如果全部设置为 1,则表示的数值为 2 31 − 1 2^{31}-1 231−1。加上第一位的正号,则 int 类型数据可以表示的大整数为 2 32 − 1 2^{32}-1 232−1)
- 3.表达式 (z=0, (x=2)||(z=1),z) 的值是1。(× 是0)
1.下面合法的C语言字符常量是()。
A.‘\t’ B.“A” C.‘xx’ D.A答案:选A
在 C 语言中,‘\t’ 是一个字符常量,表示一个制表符(Tab)字符。制表符字符是一种特殊的字符,用于在文本中插入空格,使得文本的对齐更加整齐。转义字符是一种特殊的字符,前面带有反斜杠(\),用于表示一些特殊的字符,如制表符、换行符、回车符等。除了 ‘\t’,C 语言中还有许多其他的转义字符,如:
- ‘\n’ 表示换行符
- ‘\r’ 表示回车符
- ‘’ 表示反斜杠
- ‘’’ 表示单引号
- ‘"’ 表示双引号
2.下面的程序段输出是( )。
short int a; int b = 65536; a = b; printf("%d\n", a);
A.65536 B.0 C.-1 D.1
答案:选B
在上述代码中,short int 类型的变量 a 的范围为 -32768 到 32767。int 类型的变量 b 的值为 65536,超出了 short int 类型的范围。当将 int 类型的 b 赋值给 short int 类型的 a 时,会发生数据截断,即将 b 的高位截断。因此,a 的值为 0。
需要注意的是,在 C 语言中,数据截断是合法的,但是可能会导致数据丢失或错误。因此,在使用较小的数据类型存储较大的数据时,应该谨慎处理。
3.执行下面程序中的输出语句后,输出结果是( )。
int a; printf("%d\n",(a=3*5,a*4,a+5));
A.65 B.20 C.15 D.10
答案:选B
你是否还在寻找稳定的海外服务器提供商?创新互联www.cdcxhl.cn海外机房具备T级流量清洗系统配攻击溯源,准确流量调度确保服务器高可用性,企业级服务器适合批量采购,新人活动首月15元起,快前往官网查看详情吧
网站标题:【浙江大学C小程week6知识点整理】-创新互联
网站路径:http://scgulin.cn/article/jcehe.html