C++语言程序设计复习试题..docVIP

  • 72
  • 0
  • 约1.41万字
  • 约 22页
  • 2016-12-10 发布于重庆
  • 举报
C语言程序设计复习试题.

2006年C++程序设计试题(A卷) 考试形式:闭卷考试 考试时间:120分钟 研究生学号 姓名 得分 题号 一 二 三 四 五 总分 得分 一、简答题(本大题共10小题,每小题3分,共30分) 简述C++语言具有哪些格式特点。 什么叫计算机软件? 在C++语言中,指针运算的实质是什么?请列举指针有哪些赋值运算。 在C++语言中,请给出指针函数的定义形式和函数指针的说明形式。 请描述参数在函数间传递,地址传递方式与引用方式两者之间的异同点。 C++语言引入class类类型具有什么用途? 请描述析构函数的作用。 为什么要引入虚拟函数?请给出说明形式。 请给出用new和delete建立堆空间数组和释放数组的例子。 请给出函数模板定义的一般形式。 二、数据与运算(本大题共10小题,每小题2分,共20分) 若int x=2,y=2; 则表达式 (y = x2)? (x+2)/++y : x+y 的运算结果是什么? 2 若int x=5, y(3), *p=x ; 则经过 y+=++x, *p=++x+(- -y) 的运算之后, coutx “ ” yendl; 的输出结果是什么? 15 8 若unsigned char x=0373, y =0xfa; 则 ~x^y; 的值是什么? 0xFE或-2 若int x(10), y=9 ; 则经过y+=x+1, x - =y, y2; 的运算, 则 x, y的结果值各是什么? -10 20 若char x=’b’ ; int y; y = x - = 0x20; 则 cout x ASCII is y endl; 的输出结果是什么? B ASCII is66 若int data[8]={1,2 ,3,4,5,6,7,8},*p=data; 则表达式 *(p+=5)+*(p-4) 计算结果是什么? 8 若说明int a[8]={10,9,8,7,6,5,4,3}, *p=a[0]; 则经过表达式 *(a[7] -1) += (*++p +=1, *(p+=3 )=0 ); 运算之后,则数组a各元素的值是什么? 10,10,8,7,0,5,4,3 若说明 int a= -1; double b(0) ; 则表达式 (a2) + sizeof(b)/2 的值是什么? 0 若struct MyData {int a; char b[3];}; MyData x ={ 250, “ab”}, *y=x; 则经过 x . b[0] = x . b[1]+4, (y-a) = 2 ; 运算,x的各分量结果是什么? 62 “fb” 若定义union TUnion{char x[2]; int y;}; (设int占4个字节), 说明 TUnion aKey, *pKey=aKey; pKey-y=515, pKey-x[1]= 0 ; 则表达式 pKey - y 的结果是什么? 3 三、给出下列程序的运行输出结果(本大题共3小题,每小题5分,共15分) 1、 #include “iostream.h” void afox(int x,int y,int *v,int *w) { *v = (x +=2)+( y=y); *w= x - y } void main(void) { int a=1,b=2,c=3,d=4; afox ( a,b, c, d ); cout a “,” b “,”c “,”dendl; } 答案: 3 2 11 -5 ; 2、 #include “stdio.h” int d=5; int fun( int p) { static int g=2 ; g += ++d - p; printf(%d ,g); return( g ); } void main( void ) { printf(%

文档评论(0)

1亿VIP精品文档

相关文档