课后习题 第三章 运算符和表达式8
- 格式:pdf
- 大小:49.25 KB
- 文档页数:4
可以用于代表双目运算符按位与运算,同时可以是地址运算符,表示后面操作数的地址。 '*'可以用于 代表双目运算符乘运算,同时可以与'&'相对应的单目运算符,表示后面的操作数地址中的值。 5: 答:'+'、 '&'作为单目运算符时结合性和从右到左,而作为双目运算符时,则为从左到右。'=' 运算 符的结合性为从右到左,'||' 运算符的结合性为从左到右。 6: 答:(1) 为 3; (2) 为 6.0; (3) 为 4.5; (4) 为 644; (5) 为 188; (6) 为 238; 7: 答: #include <iostream.h> void main() { int a,b; int max; cout<<"please input a and b:"; cin>>a>>b; max=(a>b)? a:b ; cout<<"a 和 b 其中最大的是:"<<max<<endl; } 8: 答: ( 1) a=5, b=0 (2) a=6, b=0 9: 答:a 为 5, b 为 10 10:答: #include <iostream.h> void main() { cout<<"Variables of type int use "<<sizeof(int)<<" bytes"<<endl; cout<<"Variables of type float use "<<sizeof(float)<<" bytes"<<endl; cout<<"Variables of type double use "<<sizeof(double)<<" bytes"<<endl; cout<<"Variables of type long use "<<sizeof(long)<<" bytes"<<endl; cout<<"Variables of type char use "<<sizeof(char)<<" bytes"<<endl; }
} 二:填空题 1. 答: 1.0 2. 答:12.5。注意,因为"/"两侧都是整型数,因此其结果也应该是整型,所以 1/2 的结果为 0 ,而不是 0.5。 3: 答:x<=2 4: 答:表达式具有值,而语句是没有值的并且语句末尾要加分号。 5 : 答:右 左 6 : 答: x*(y+8) 7. 答: 27 8. 答: 14 9. 答: 35 10. 答:1 0 3 三:编程及简答题 1. x=2, y=3, z= 4 时,计算下面表达式的值 A1、 A2 A1 = x + y +2/2+z 和 A2=x+(y+2)/(2-z) 2.述算术运算符的组成 3.下列运算符从高到底进行排序: ‘ +’ 、 ‘*’ 、 ‘&&’ 、 ‘&’ 、 ‘ >’ 、 ‘ >=’ 、 ‘*=’ 。 4.述下列运算符各能代表几种意义: ‘ -’ 、 ‘&’ 、 ‘*’ 。 5.下列运算符的结合性如何: ‘ +’ 、 ‘&’ 、 ‘=’ 、 ‘||’ 。 6.计算下列表达式的值: i.1/2 + 5/2 + 7/6 ii.1/2. + 5/2. + 3. iii.1/2 + 5./2 + 2 iv.(unsigned char) 500 + 200 v.(unsigned char) (500 + 200) vi.(unsigned int)(unsingned char)750 7.编程实现:由键盘输入两个整数,然后输出最大者。 8. int a=5, b=0; 问下面表达式运算后 a 和 b 的值是多少? (1) ! a && a+b && a++ (2) !a||a++||b++ 9.有变量说明 int a=4,b; 指出下面表达式运算后 a 和 b 的结果? b+=b=++a; 10. 编程实现:测试你机器的 int,float,double,long,char 各类型变量存储的字节数。 三:编程及简答题 1: 答:A1 = 2+3 + 1 + 4 = 5+1+4=6+4=10; A2 = 2 + (3+2)/(2+4) = 2 + 5/6 = 2 + 0 = 2 2: 答:算术运算符由加'+' 减'-'乘'*' 除'/' 和取余'%'组成。 3: 答:依次为'*'、 '+'、 '>'、 '>='、 '&'、'&&'、 '*='。 4: 答: '- '可以用于代表双目运算符减运算,同时可以代表单目运算符使后面的操作数变换符号。'&'
一:选择题 1.以下符号中不能作为标识符的是: a._256 b.void c.scanf d.Struct 2.下面不能正确表示 a*b/(c*d)的表达式是: a.(a*b)/c*d b.a*b/(c*d) c.a/c/d*b d.a*b/c/d 3.下列运算符中,运算对象必须是整型的是: a./ b.%= c.= d.& 4.若 x,y,z 均被定义为整数,则下列表达式终能正确表达代数式 1/ (x*y*z)的是: a.1/x*y*z b.1.0/(x*y*z) c.1/(x*y*z) d.1/x/y/(float)z 5.已知 a,b 均被定义为 double 型,则表达式:b=1,a=b+5/2 的值为: a.1 b.3 c.3.0 d.3.5 6.如有 int a=11; 则表达式(a++*1/3)的值是 a.0 b.3 c.4 d.12 7.在下列运算符中,优先级最低的是: a.|| b.!= c.< d.+ 8.表达式 9!=10 的值为: a.非零值 b.true c.0 d.1 9.能正确表示 x>=3 或者 x<1 的关系表达式是: a.x>=3 or x<1 b.x>=3|x<1 c.x>=3||x<1 d.x> =3||x<1 10.下列运算符中优先级最高的是: a.! b.% c.-=