
C++程序员笔试题.doc
12页贵州云端科技发展有限公司Guizhou Above Cloud Technology Development Ltd.C/C++程序员笔试题姓 名: _________ _姓 别: ___ ___联系: _______________________________笔试时间: ________ _年______月_______日1.一个最简单的C++程序,可以只有一个( )a) 库函数 (b) 自定义函数 (c) main函数 (d) 空函数2.用C++语言编制的源程序要变为目标程序必须要经过( )a) 解释 (b) 汇编 (c) 编辑 (d) 编译3. C++程序中的简单语句必须以( )结束a) 冒号 (b) 分号 (c) 空格 (d)花括号4.有说明 int a=0; double x=5.16; 以下语句中,( )属于编译错误a) x=a/x; (b) x=x/a; (c) a=a%x; (d) x=x*a;5. 执行C++程序时出现的“溢出”错误属于( )错误a) 编译 (b) 连接 (c) 运行 (d) 逻辑6.下列选项中,全部都是C++关键字的选项为( )。
a) while IF Static (b) break char go(c) sizeof case extern (d) switch float integer7. 按C++标识符的语法规定,合法的标识符是( )a) _abc (b) new (c) π (d) “age“8.C++语句中,两个标识符之间( )不能作为C++的分隔符a) 数字 (b) ; (c) : (d) +9.下列正确的八进制整型常量表示是( )a) 0a0 (b) 015 (c) 080 (d) 0x1010.下列错误的十六进制整型常量表示是( )a) 0x11 (b) 0xaf (c) 0xg (d) 0x1f11. 在下列选项中,全部都合法的浮点型数据的选项为( )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+212.下列正确的字符常量为( )。
a) “a” (b) ‘name’ (c) a (d) ‘\101’13.下列选项中,( )不能交换变量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.关于下列语句叙述错误的是( )int i=10, *p=&i;(a) p的值为10 (b) p指向整型变量i(c) *p表示变量i的值 (d) p的值是变量i的地址15.有以下变量说明,下面不正确的赋值语句是( )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.有以下变量说明,下面正确的语句是( ) int a=10, b; int &pa=a, &pb=b; (a) &pb = a; (b) pb = pa; (c) pb = &pa; (d) *pb = *pa;17.执行下面语句序列后,a和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和518. 在下列运算符中,( )优先级最高a) <= (b) *= (c) + (d) *19.在下列运算符中,( )优先级最低a) ! (b) && (c) != (d) ? :20.设 int i=1, j=2; 则表达式 i+++j 的值为( )a) 1 (b) 2 (c) 3 (d) 421.设 int i=1, j=2; 则表达式 ++i+j 的值为( )a) 1 (b) 2 (c) 3 (d) 422.在下列表达式选项中,( )是正确a) ++(a++) (b) a++b (c) a+++b (d) a++++b23.已知 int i=0, j=1, k=2; 则逻辑表达式 ++i||--j&&++k 的值为( )a) 0 (b) 1 (c) 2 (d) 324. 执行下列语句后,x的值是( d ),y的值是( )。
int x, y ; x = y = 1; ++ x || ++ y ;(a) 不确定 (b) 0 (c) 1 (d) 225.设x为整型变量,不能正确表达数学关系 1<x<5 的C++逻辑表达式是( )a) 1< x <5 (b) x==2||x==3||x==4(c) 1
a) if( x&&y ) i++ ; (b) if( x==y ) i++ ;(c) if( x||y ) i++ ; (d) if( !x ) i++ ;30.设有函数关系为y= ,下面选项中能正确表示上述关系为( )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的值为( )。
switch( i ){ case 1 : i ++ ; case 2 : i -- ; case 3 : ++ i ; break ; case 4 : -- i ; default : i ++ ;}(a) 1 (b) 2 (c) 3 (d) 432.已知int i=0,x=0; 下面while语句执行时循环次数为( )while( !x && i< 3 ) { x++ ; i++ ; }(a) 4 (b) 3 (c) 2 (d) 133.已知int i=3;下面do_while 语句执行时循环次数为( )do{ i--; cout<=0 ) ;(c) int a=5 ; while( a ) { a-- ; } ;(d) int i=3 ; for( ; i ; i -- ) ;36.以下正确的函数原型为( )。
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 ); 下面选项中,不正确的调用是( )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 * ); 下面选项中,正确的调用是( )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 & ); 下面选项中,正确的调用是( )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.有声明 void fun5( int * & ); int a , *p = &a;下面选项中,正确的调用是( )。
a) fun5( &a ); (b) fun5( p ); (c) fun5( *a ); (d) fun5( *p ) ;41.有声明 int fun6( int ),(*pf)(int) = fun6;。
