华南理工大学计算机学院
高级语言程序设计(C++I)试卷
学生证号:____________________ 姓名: ____________________
注意事项:1. 本试卷共五大题,满分100分,考试时间120分钟; 2. 所有答案请写在答卷上,试卷和答卷同时提交;
一.单项选择题(每小题2分,共20分) 1.下列字符列中,合法的长整型常量是: (A) 4.18e3 值分别是: (A) 0,0
(B) 0,1
(C) 1,0
(D) 1,1
(B) 0.46793
(C) 4L
(D) 956738
2.设变量x,y,a,b,c,d的值为1,计算表达式(x=a!=b)&&(y=c!=d)后,变量x,y的
3.以下运算符中,优先级最低的是: (A) *=
(B) ?::
(C) &&
(D) >=
4.在C++中,char类型数据在内存的存储形式是: (A) 原码
(B) 反码
(C) 补码
(D) ASCII码
5.设变量定义int x = 6, y, z; 执行语句 y = z = x--; y = x == z; 后变量y的值是: (A) 0
(B) 1
(C) 5
(D) 6
6.下面的变量定义中,不正确的是: (A) char *p=”string” (C) float *q=&b, b;
(B) int a[]={‘A’,’B’,’C’}
(D) doudle a, *r=&a;
7.设有变量定义 doubleb[5], *p=b; 能正确表示b数组中元素地址的表达式是: (A) b
(B) b+5
(C) *b[0]
(D) &b
8.设有变量定义 int a[]={2,3,5,9,11,13},*pa=a, w; 执行语句w=++(*++pa); 后,变量w和*pa的值是:
(A) 3和3 (B) 4和3 (C) 3和4 (D) 4和4 9.语句if(w) … ; else … ; 中的表达式w的等价表示是: (A) w==0
(B) w==1
(C) w!=0
(D) w!=1
10.设有函数说明和变量定义:int max(int x,int y); int(*p)(int,int)=max; int a, b; 以下正确调用函数的代码是:
(A) *p(a,b) (B) p(a,b) (C) *(p(a,b)) (D) p(&a,&b)
- 1 -
二.简答题(每小题2分,共20分)
1.语句 cout< 5.设有变量定义int w[]={1,3,5,7,9}, *p=w; 表达式 *(p+2)**(w+3)的值? 6.变量定义 int (*pf)(int); 中pf是? 7.设有变量定义 int a[3][2]={1,2,3,4,5,6}, (*p)[2]=a; 表达式**(p+2)的值? 8.设有变量定义 struct{int x; int y; }d[2]={{1,4},{3,5}}; 表达式d[0].y / d[0].x * (d+1)->x 的值? 9.设有函数调用语句 Avegare(a,50,ave)的功能是求整型数组前50个元素的平均值ave。 对应的函数原型是? 10.有说明 struct link{ int code; link *next; }; link *head,*p;已知head为单链表 的头结点,在head之前插入p结点操作的语句是? 三.分析程序,写输出结果(每小题5分,共20分) 1. #include if(m>n)m-=n;else n-=m; return m; } main() { cout< 2. #include do{ c+=n; n/=10; } while(n); return c; } main() {cout< 3. #include void s(int *a,int n) {int i,j,t; for(i=0;i