百度文库 - 好好学习,天天向上
中国地质大学(北京)
2007年秋硕士研究生C++ 语言程序设计试题(A卷)
考试形式:闭卷考试 考试时间:120分钟
研究生学号 姓名 得分 题号 得分
一 二 三 四 五 总分 一、简答题(每小题3分,共30分)
1、C++语言有那些主要特点?
2、C++语言有哪些基本数据类型?
3、什么叫声明语句?那些说明的变量为局部变量?又那些说明的变量为全局变量?
4、什么叫内存单元的地址?什么叫指针变量?
5、什么叫函数的实参?什么叫函数的形参?
-I
百度文库 - 好好学习,天天向上
6、什么叫类?什么叫对象?
7、class类类型中,构造函数应具有那些特征?
8、类定义体中,有些函数之前有关键字friend的意义是什么?
9、在类定义体中,说明成员的访问权限为public、private和protected三个关键字的作用是什么?请分别简述之。
10、 C++语言里,有那些是静态联编实现多态性的?
-II
百度文库 - 好好学习,天天向上
二、数据与运算(每小题2分,共20分)
1. 若int x=2,y=0; 则表达式 (y = 0)? x/++y : x -2 的运算结果是什么? 0
2. 若int x=3, y(0), *p=&y ; 则经过 x += y =2, *p=++x+ y 的运算之后,
cout< 3. 若unsigned char x=005, y =0xf0; 则 x^~y; 的值是什么? 00000101 00001111 00001010 0x0a 012 10 4. 若int x(0), y=1 ; 则经过语句x = (y<<=2, ++y ); 的运算, 则 x, y的结果值各是什么? 5 5 5. 若char x=’c’, y= 0x20 ; int z( 0 ); z = x - = y - 3; x 0x63 0x46 则 cout<< x<<\ z << endl; 的输出结果是什么? F ASCII code is70 6. 若int a, b, c ; 则经过a=1, b= a<<2+2, c /=a+1 运算之后,问a,b,c存放的数各是什么? 1 16 7. 若说明int a[9]={1,2,3,4,5,4,3,2,1}, *p=&a[3] ; 则经过表达式 p[1] = ( p[0] +=1, *(p+=2)+=1, *(p-3)+=2 ); 运算之后,则数组a各元素的值是什么? {1,2,5,5,5,5,5,2,1} 8. 若说明 int a= 2; double b ; 则表达式 (a<<2) * sizeof(b)*a 的值是什么? 128 9. 若struct MyData { int a; float b ; char c[6]}; MyData x ={ 10, 1.0f, “ab”;}, *y=&x; 则经过 x . c[1]++, x . c[0]+=0x20, (y->b) += ++ ; 运算,x的各分量结果是什么? { 11, 10.0f, “~c”;} -III