第02章 基本数据类型、运算符与表达式
1. 选择题
(1)在32位机中,int型字宽为( )字节。 A) 2 B) 4 C) 6 D) 8
(2)下列十六进制的整型常数表示中,错误的是( )。 A) 0xad B) 0X11 C)0xA D) 4ex
(3)设n=10,i=4,则执行赋值运算n%=i-1后,n的值是( )。 A) 0 B) 1 C) 2 D) 3
(4)若有a=2,b=4,c=5,则条件表达式a>b?a:b>c?a:c的值为( )。 A) 0 B) 2 C) 4 D) 5
(5)若有a=1,b=2,则表达式++a==b的值为( )。 A) 0 B) 1 C) 2 D) 3
2.简答题
(1)指出下列数据中哪些可作为C++的合法常数?
(a) 588918 (b) 0129 (c) 0x88a (d) e-5 (e) ″A″ (f) .55 (g) ’\\\\’ (h) 0XCD (i) 8E7 (j) π
(2)指出下列符号中那些可作为C++的合法变量名? (a) ab_c (b) β (c) 3xyz (d) if (e) cin
(f) a+b (g) NAME (h) x! (i) _temp (j) main
(3)根据要求求解下列各表达式的值或问题。 (a) (int)3.5+2.5
(b) (float)(5/2)>2.4 (c) 21/2+(0xa&15)
(d) 设int i=10,则表达式i&&(i=0)&&(++i)的值是多少?该表达式运算结束后变量i的值为多少?
(e) 设int a=1,b=2,c=3;,求表达式a
(f) 设int i=1;,则i++||i++||i++的值是多少?表达式运算结束后变量i的值是多少? (g) 设int a,b;,求表达式(a=1,a++,b=1,a&&b++)?a+1:a+4的值。 (h) 设int x=5;,求表达式x+=x-=x*x的值。 (i) 设int x=0,y=2;,则语句if(x=0)y++;执行完毕后变量y的值是多少? (j) 设int a=2,b=3;,执行表达式c=b*=a-1后变量c的值是多少? (k) 写出判断字符型变量s1的值为’0’~’9’的正确的C++表达式。
(l) 若给定条件表达式(N)?(c++):(c--),写出与N功能等价的表达式。
3.读程序写结果
(1)设有以下程序段,请根据要求回答相应问题。 Int a,b,c,x;
a=2;b=3;c=7;d=19; x=d/b%a;
x=d%c+b/a*5+5;
(2)设有以下程序段,请根据要求回答相应问题。 Int a,b,c; a=b=c=0;
a=(++b)+(++c); a=b=c=0;
a=(b--)+(--c);
(3)写出与下列数字表达式相对应的C++表达式。
22
(a)a+2ab+b
3
(b)4/3πR
(c)5/9(F-32) (d)a≤b≤c (4)
#include
void func(int x,int y=10,int z=20); void main() {
func(11,12,13); func(11); func(11,12); }
void func(int x,int y,int z) {
cout< #include If(x=y!=0) cout<<″x=″< cout<<″x=″< 4.编程题 (1)编写程序,提示用户输入三角形的三条边长,判断该三角形是否为直角三角形,若是则输出结果以及三角形面积。 (2)编写程序,求解各种数据类型的存储长度并显示出来,在其中找出存储长度最大和最小的两种数据类型并输出。 (3)编写程序输入一个华氏温度,将其转换为摄氏温度并输出。已知华氏稳定转换为摄氏度的计算公式如下: C=(F-32)*5/9 其中,F为华氏温度,C为摄氏温度。 (4)编写程序输入一个十进制表示的正整数,将其转化为二进制表示并输出结果。 习题参考答案 第1章 C++语言概述 1.填空题 (1)函数说明,函数体 (2)声明区,主程序区,函数定义区 (3)多态性 (4)namespace,using (5)std (6)cin,>> (7)// (8)对数据的操作 2.判断题 (1)对 3.改错题 (1)没有函数体,应改为 void main() {}; (2)语句没有分号,应改为 using namespace myspace; (3)cout和操作符<<共同完成输出的功能,应改为 cout<<\ (4)应改为 #include (2)错 (3)错 (4)错 (5)错 4.简答题 5.编程题 (略) (略) 第2章 基本数据类型、运算符与表达式 1. 选择题 (1)B (2)D (3)B (4)D (5)B 2.简答题 (1)(a)、(c)(e)、(f)、(g)、(h)、(i) (2)(a)、(g)、(i)、(j) (3) (a)5.5 (b)0 (c)20 (d)0,0 (e)1 (f)1,2 (g)3 (h)-40 (i)2 (j)3 (k)s1>='0'&&s1<='9' (l)N!=0 3.读程序写结果 (1)0,15 (2)(1、1、1),(-1、-1、-1) (3) (a)a*a+2*a*b+b*b (b)4.0/3.0*3.1415926*R*R*R (c)5.0/9.0*(F-32) (d)b>=a&&b<=c (4) 36 41 43 (5) x=1 4.编程题 (略) 第3章 1.选择题 C++的控制语句 (1)B (2)A (3)A (4)C (5)A 2.判断题 (1)错 (2)对 (3)对 (4)错 (5)错 3.读程序写结果 (1) 1 2 2 3 3 3 4 4 4 4 5 5 5 5 5 (2) 1 1 2 1 1 2 3 2 1 1 2 3 4 3 2 1 1 2 3 4 5 4 3 2 1 (3) j的值为0; i的值为2; 4.编程题 (略) 第4章 1. 填空题 函数 (1)void (2)静态全局变量,static (3)函数重载 (4)inline (5)递归函数 (6)宏定义命令,文件包含命令,条件编译命令 2.判断题 (1)错 (6)对 (2)错 (3)错 (4)错 (5)错 (7)错 (8)错 (9)对 (10)对 3.读程序写结果 (1) x=7,y=4