C++试题及答案
一、选择题
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) 运行 (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 (b) new (c) π (d) “age“
8.C++语句中,两个标识符之间( a )不能作为C++的分隔符。
(a) 数字 (b) ; (c) : (d) +
9.下列正确的八进制整型常量表示是( b )。
(a) 0a0 (b) 015 (c) 080 (d) 0x10
10.下列错误的十六进制整型常量表示是( c )。
(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的值。
(a) t=b; b=a; a=t; (b) a=a+b; b=a-b; a=a–b;
(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的地址
15.有以下变量说明,下面不正确的赋值语句是( b )。
int a=5, b=10, c; int *p1 = &a, *p2 = &b;
(a) *p2 = b ; (b) p1 = a ;
(c) p2 = p1 ; (d) c = *p1 *( *p2 ) ;
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
18. 在下列运算符中,( d )优先级最高。
(a) <= (b) *= (c) + (d) *
19.在下列运算符中,( d )优先级最低。
(a) ! (b) && (c) != (d) ? :
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 )。
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<x && x<5 (d) !(x<=1)&&!(x>=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 )。
( x = 4 * 5, x * 5 ), x + 25
(a) 25 (b) 20 (c) 100 (d) 45
29.已知 int i=0, x=1, y=0 ; 在下列选项使i的值变成1的语句是( c )。
(a) if( x&&y ) i++ ; (b) if( x==y ) i++ ;
(c) if( x||y ) i++ ; (d) if( !x ) i++ ;
30.设有函数关系为y= ,下面选项中能正确表示上述关系为( c )。
(a) y = 1 ; (b) y = -1 ;
if( x >= 0 ) if( x != 0 )
if( x == 0 ) y = 0 ; if( x > 0 ) y = 1 ;
else y = -1; else y = 0;
(c) if( x <= 0 ) (d) y = -1 ;
if( x < 0 ) y = -1 ; if( x <= 0 )
else y = 0 ; if( x < 0 ) y = -1 ;
else y = 1 ; else y = 1 ;
31.假设i=2,执行下列语句后i的值为( b )。
switch( i )
{ case 1 : i ++ ;
case 2 : i -- ;
case 3 : ++ i ; break ;
case 4 : -- i ;
default : i ++ ;
}
(a) 1 (b) 2 (c) 3 (d) 4
32.已知int i=0,x=0; 下面while语句执行时循环次数为( d )。
while( !x && i< 3 ) { x++ ; i++ ; }
(a) 4 (b) 3 (c) 2 (d) 1
33.已知int i=3;下面do_while 语句执行时循环次数为( b )。
do{ i--; cout<<i<<endl;}while( i!= 1 );
(a) 1 (b) 2 (c) 3 (d) 无限
34.下面for语句执行时循环次数为( b )。
int i;
for ( i=0,j=5;i=j; )
指向类成员函数的指针 { cout << i << j << endl;
i++; j--;
}
(a) 0 (b) 5 (c) 10 (d) 无限
35.以下死循环的程序段是( b )。
(a) int x; for( int x=0 ; x<3 ; ) { x++ ; } ;
(b) int k = 0; do { ++k ; } while( k>=0 ) ;
(c) int a=5 ; while( a ) { a-- ; } ;
(d) int i=3 ; for( ; i ; i -- ) ;
36.以下正确的函数原型为( d )。
(a) f1( int x; int y ); (b) void f1( x, y );
(c) void f1( int x, y ); (d) void f1( int, int );
37.有函数原型 void fun2( int ); 下面选项中,不正确的调用是( c )。
(a) int a = 21; fun2( a ); (b) int a = 15; fun2( a*3 );
(c) int b = 100; fun2( &b ); (d) fun2( 256 );
38.有函数原型 void fun3( int * ); 下面选项中,正确的调用是( c )。
(a) double x = 2.17; fun3( &x ); (b) int a = 15 ; fun3( a*3.14 );
(c) int b = 100; fun3( &b ); (d) fun3( 256 );
39.有函数原型 void fun4( int & ); 下面选项中,正确的调用是( c )。
(a) int a = 2.17; fun4( &a ); (b) int a = 15; fun4( a*3.14 );
(c) int b = 100; fun4( b ); (d) fun4( 256 ) ;
40.有声明
版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系QQ:729038198,我们将在24小时内删除。
发表评论