运算符和表达式练习题

上传人:mg****85 文档编号:34202429 上传时间:2018-02-21 格式:DOC 页数:4 大小:23.50KB
返回 下载 相关 举报
运算符和表达式练习题_第1页
第1页 / 共4页
运算符和表达式练习题_第2页
第2页 / 共4页
运算符和表达式练习题_第3页
第3页 / 共4页
运算符和表达式练习题_第4页
第4页 / 共4页
亲,该文档总共4页,全部预览完了,如果喜欢就下载吧!
资源描述

《运算符和表达式练习题》由会员分享,可在线阅读,更多相关《运算符和表达式练习题(4页珍藏版)》请在金锄头文库上搜索。

1、第 6 讲:运算符和表达式1. 写出下列各逻辑表达式的值。设,a=3,b=4,c=5。 (1) a + b c & b = c 0(2) a | b + c & b - c 1(3) !(a b) & !c | 1 1(4) !(x = a) & (y = b) & 0 0(5) !(a + b) + c 1 & b + c / 2 12. 阅读程序,写出运行结果: #include int main() int a=3,b=1, x=2, y=0; printf(%d, %d n, (a b) printf(%d, %d n, (y | b) printf(%dn,!a | a b);1,1

2、1,113. 有以下程序int main()int a=1,b=2,m=0,n=0,k;k = (n = b a) | (m = a int main()int a ,b,d=241; a=d/100%9; b=(-1) printf(%d,%dn, a, b);2,16. 为表示关系 xy z,应使用 C 语言表达式是? (x=y&y=z)7. 已知:char c; int a, b, d; c=w; a=1; b=2; d=-5; 求下列表达式的值: 。(1) x+1 = d + 1 1(4) 3 d int main()int a=2,b=3,c=4;printf(%dn, 1 / 3.

3、0 * 3.0 = 1.0); 1printf(%dn, a + b 3 * c); 0printf(%dn, (a c); 0printf(%dn, A != a); 110. 用条件表达式描述 (1) 取三个数 a、b、c 中的最大者 ac?(ab?a:b):(cb?c:b)(2) 取三个数 a、b、c 中的最小者 a4)&mode 2已知一个 unsigned long 的数可以看成是由两个 unsigned short 组成,分别为高 16 位和低 16 位,通过写写位运算表达式分别将这两个 unsigned short 数取出保存到两个 unsigned short 的变量中。3.

4、已知对一个 unsigned int oflag,第一位(以 1 序)代表控制文件的读开关,第二位代表控制文件的写开关,1 代表开关为 ON 状态,0 为 OFF 状态,除此之外的其他位不处理,默认一直都是 OFF。假设初始情况读开关和写开关都是 OFF 状态。写位运算表达式:第一步:仅打开读开关第二步:仅打开写开关第三步:测试读开关和写开关的状态第四步:仅关闭读开关第五步:仅关闭写开关第六步:同时打开读写开关第七步:同时关闭读写开关4. 我国邮政编码的一二位代表省份或直辖市。第三四位代表地、市、州。第五六位代表一个县. 一个镇或者一个居住的小区。例如:邮政编码“130021” “13”代表吉

5、林省, “00”代表省会长春, “21”代表所在投递区。假设用一个 unsigned long 来表示邮政编码,则”130021”可以表示为 0x00130021,试写位运算表达式,已知一个邮政编码,快速提取其省份,地市和投递区这三个域。5. 交换两个 unsigned long 类型的值,不用中间临时变量。 (提示,使用异或,异或有两个特性:一个数异或本身恒等于 0;一个数异或 0 恒等于本身。 )6. 整数求负,设 int x=7,利用位运算表达式求-7。7. 有两个整形变量 a 和 b,只用位运算,不用 if、switch 等条件判断语句,找出较大的那个变量。8. 判断正整数 num 是奇数还是偶数9. 取整型变量 num 的第 k 位(二进制表示中) ;10. 将整型变量 num 的第 k 位(二进制表示中)清零;

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 生活休闲 > 科普知识

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号