习题 1 及其解答
1.1 选择题
1.一个最简单的C++程序,可以只有一个(
c
)。
(a) 库函数
(b) 自定义函数
(c)
main函数 (d) 空函数
2.用C++语言编制的源程序要变为目标程序必须要
经过(
d
)。
(a) 解释
(b) 汇编
(c) 编辑
(d) 编译
3. C++程序中的简单语句必须以(
b
)结束。
(a) 冒号
(b) 分号
(c) 空格
(d)花括号
4.有说明 int a=0; double x=5.16; 以下语句中,
(
c
)属于编译错误。
(a) x=a/x;
(b) x=x/a;
(c) a=a%x;
(d) x=x*a;
5. 执行C++程序时出现的“溢出”错误属于(
c
)
错误。
(a) 编译
(b) 连接
(c) 运 行
1
(d) 逻辑
6. 下 列 选 项 中 , 全 部 都 是 C++ 关 键 字 的 选 项 为
(
c
)。
(a)
while
IF
Static
(b)
break
char
go
(c)
sizeof
case
extern
(d)
switch
float
integer
7. 按 C++ 标 识 符 的 语 法 规 定 , 合 法 的 标 识 符 是
(
a
)。
(a) _abc
(d) “age“
(b) new
(c) π
8.C++语句中,两个标识符之间(
a
)不能..作为
C++的分隔符。
(a) 数字
(b) ;
(c) :
(d)
+
9.下列正确的八进制整型常量表示是(
b
)。
(a) 0a0
(b) 015
(c) 080
(d) 0x10
10.下列错误的十六进制整型常量表示是(
c
)。
2
(a) 0x11
(b) 0xaf
(c) 0xg
(d) 0x1f
11. 在下列选项中,全部都合法的浮点型数据的
选项为(
b
)。
(a) -1e3.5
15.
2e-4
(b) 12.34
-1e+5
0.1E-12
(c) 0.2e-2
-12345.
e-5
(d)
5.0e(1+4)
0.1
8e+2
12.下列正确的字符常量为(
d
)。
(a) “a”
(b) ‘name’
(c) a
(d)
‘\101’
13.下列选项中,(
d
)不能..交换变量a和b的值。
b=a-b;
(b) a=a+b;
(a) t=b;
b=a;
a=a–b;
a=t;
(c) t=a;
a=b;
b=t;
(d) a=b;
b=a;
14.关于下列语句叙述错误的是(
a
)。
int i=10, *p=&i;
(a) p的值为10
(b) p指向整型变量i
(c) *p表示变量i的值
(d) p的值是变量i
3
的地址
15.有以下变量说明,下面不正确...的赋值语句是
b
)。
(
int a=5, b=10, c; int *p1 = &a, *p2 = &b;
(a) *p2 = b ;
(c) p2 = p1 ;
*( *p2 ) ;
(b) p1 = a ;
(d)
c
=
*p1
16.有以下变量说明,下面正确的语句是(
b
)。
int a=10, b; int &pa=a, &pb=b;
(a) &pb = a;
(b) pb = pa;
(c) pb =
&pa;
(d) *pb = *pa;
17 . 执 行 下 面 语 句 序 列 后 , a 和 b 的 值 分 别 为
(
b
)。
int a = 5 , b = 3 , t ;
int &ra = a ;
int &rb = b ;
t = ra ; ra = rb ; rb = t ;
(a) 3和3
(b) 3和5
(c) 5和3
(d) 5和5
4
18. 在下列运算符中,(
d
)优先级最高。
(a) <=
(b) *=
(c) +
(d) *
19.在下列运算符中,(
d
)优先级最低。
(a) !
(d) ? :
(b) &&
(c) !=
20.设 int i=1, j=2; 则表达式 i+++j 的值为
(
c
)。
(a) 1
(b) 2
(c) 3
(d) 4
21.设 int i=1, j=2; 则表达式 ++i+j 的值为
(
d
)。
(a) 1
(b) 2
(c) 3
(d) 4
22.在下列表达式选项中,(
c
)是正确。
(a) ++(a++)
(b) a++b
(c) a+++b
(d) a++++b
23 . 已 知 int i=0, j=1, k=2; 则 逻 辑 表 达 式
++i||--j&&++k 的值为(
b
)。
(a) 0
(b) 1
(c) 2
(d) 3
24. 执行下列语句后,x的值是(
d
),y的值是
(
c
)。
5
int x, y ;
x = y = 1;
++ x || ++ y ;
(a) 不确定
(b) 0
(c) 1
(d)
2
25.设x为整型变量,不.能.正确表达数学关系 1<x
<5 的C++逻辑表达式是(
)。
a
(a) 1< x <5
(b) x==2||x==3||x==4
(c) 1=5)
26. 已知 int x=5; 执行下列语句后,x的值为
(
c
)。
x += x -= x * x;
(a) 25
(b) 40
(c) –40
(d)
20
27. 设 int a=1, b=2, c=3, d=4; 则以下条件表
达式的值为(
a
)。
a < b ? a : c < d ? c : d
(a) 1
(b) 2
(c) 3
(d) 4
28. 以下逗号表达式的值为(
d
)。
6
( x = 4 * 5, x * 5 ), x + 25
(a) 25
(b) 20
(c) 100
(d)
45
1.2 把下列数学表达式写成 c++算术表达式
1 .
1
1
1
1
1
x
y
x{x[x(ax+b)+c]+d}+e
|10)
b
b
)
4.
1
2
cos
a
a
2
x
2
x
3. ln(1+|
5. cot
1(
1
lg(a2+ab+b2)
【解答】
2.
48
6.
1. 1/(1 + 1/(1 + 1/(x + y)))
2. x * ( x * ( x * ( a * x + b ) + c ) + d )
+ e
3. log( 1 + pow( fabs( ( a + b )/( a – b ) ),
10)
4.
sqrt(
1
+
3.14159/2
*
cos(
48
*
3.14159/180 ) )
5. 1/tan( ( 1 - x*x )/( 1 + x*x))
7
或 者
cos( ( 1 - x*x )/( 1 +
x*x ) )/sin( ( 1 - x*x )/( 1 + x*x ) )
6. log10( a * a + a * b + b * b )
1.3 用逻辑表达式表示下列条件
1. i 被 j 整除
2. n 是小于正整数 k
的偶数
3. 1≤x<10
4. x,y 其中有一个
小于 z
5. y [–100,–10],并且 y [10,100]
6. 坐标点(x, y)落在以(10, 20)为圆心,
以 35 为半径的圆内
7. 三条边 a,b 和 c 构成三角形
8. 年份 Year 能被 4 整除,但不能被 100 整除或
者能被 400 整除
【解答】
1. i%j == 0
2.(n=-100 && y<=-10 ) && !( y>=10 &&
8