好文档 - 专业文书写作范文服务资料分享网站

2016-2017(1)C++程序设计基础

天下 分享 时间: 加入收藏 我要投稿 点赞

……… …… … … … …号…位…座… … … 线 … … … … … … …级…班…业…专… … … … …) 题封 … 答… 不… 院内…学 线… … 封… 密… (… … … … … … … … … … 号密学… … … … … … … … …名…姓……………… …诚信应考,考试作弊将带来严重后果!

华南理工大学本科生期末考试

《C++程序设计基础》 A卷

注意事项:1. 开考前请将密封线内各项信息填写清楚; 2. 所有答案请直接答在答题纸上,否则无效; 3. 试卷和答题纸同时提交; 4.考试形式:闭卷;

5. 本试卷共 四大题,满分100分, 考试时间120分钟。

一、 单项选择题,请将正确的选项涂写在答题纸相应位置上。(共20小题,每小题

1分,共20分)

1. 下列符号在计算当中不是分隔符的是( )。

A. ; B. [] C. () D. {} 2. int a = 4;对下面四个表达式的值说法正确的是( )。

(1) a += (a++); (2) a += (++a); (3) (a++) += a; (4) (++a) += (a++); A.9、10、10、11 B.(3)式错误 C.(4)式错误 D.(3)(4)都错误 3. 下列程序段执行后的输出结果是( )。

int i=3; i=(++i)+(++i)+(++i);cout<

A. 9 B. 12 C. 15 D. 18

4. 设以下变量都是int类型,则值不等于7的表达式是( ) 。

A.x=y=6,x+y,x+1 B.x=y=6,x+y,y+1 C.x=6,x+1,y=6,x+y D.y=6,y+1,x=y,x+1

5. 若整型变量a、b、c、d中的值依次为:1、4、3、2。则条件表达式a

的值是( )。

A.1 B.2 C.3 D.4

6. 设变量x,y,a,b,c,d的值为1,计算表达式(x=a!=b)&&(y=c!=d)后,变量x,y的值

分别是( )。

A. 0,0 B.0,1 C.1,0 D.1,1 7. 执行以下程序段后,变量i 的值为( )。

int i=2; switch (i)

{ case 1:i+=i++; case 2:i+=i++; case 3:i++; break; default : i++; break; }

A. 4 B. 5 C. 6 D. 7 8. 下面语句构成死循环的是( )。

A. for(i=0; i<10; i++) cout << i <=1; i--) cout << i <

C. i=10; do { cout << i-- < 0); D. i=0; while(i <= 10); cout << ++i <

《C++程序设计基础》试卷第 1 页 共 8 页

_____________ ________ for(int i=0; in/2) break;

A. n/2 B. n/2+1 C. n/2-1 D. n-1

10. x=0; for( i=0; i<99; i++) if(i) x++; 执行完程序段后,x的值是( )。

A. 0 B. 30 C. 98 D. 90 11. 假定变量a和pa定义为“double a[10], *pa=a;”,要将3.14赋值给a中的下标

为5的元素,不正确的语句是( )。 A. pa[5]=3.14; B. a[5]= 3.14; C. *(pa+5)= 3.14; D. *(a[0]+5)= 3.14; 12. 下列程序的输出结果是( )。

#include using namespace std; void main()

{int n[][3]={10,20,30,40,50,60}; int (*p)[3]; p=n;

cout<

A. 10,30,50 B. 10,20,30 C. 20,40,60 D. 10,30,60 13. 以下程序的输出结果是( )。

#include using namespace std; int main()

{ char w[][10]={\for(k=1;k<3;k++) cout<< w[k]; return 0; }

A. ABCDEFGH B. EFGHIFKL C. ABCD EFGH IJKL D. EFGH IFKL MNOP 14. 设有说明 char s[]=\则cout<

cout<

A.abc\\ 5 6 B.abc\\ 4 5 C.abc\\n 5 6 D.abc\\n 4 5 15. 以下对C++ 函数的有关描述中,正确的是( ) 。

A. C++调用函数时,只能把实参的值传给形参,形参的值不能传递给实参 B. C++函数既可以嵌套定义又可以递归调用 C. 函数必须有返回值,否则不能使用函数

D. C++程序中有调用关系的所有函数必须放在同一源程序文件中

16. 下列函数说明及变量定义,各自独立编译时产生错误信息的是( )。

int fun1 (int a, int x); void fun2 (int a, int x); void fun3(int a[], int n); void fun4(int *p, int n); int a=5, b=10, c[5]={0}; float x=1.5;

A. fun2(fun1(a,b),a); B. fun1(x,a); C. fun3(c[4],5); D.fun4(c,5); 17. 以下程序的输出结果是( ) 。

int func(int a,int b) { return a+b;} int main( ) { int x=6,y=7,r;

r=func(func(x++,y++),y++); cout<

《C++程序设计基础》试卷第 2 页 共 8 页

A. 20 B. 21 C. 22 D. 23 18. 有声明

int fun6( int ); int (?pf)(int) = fun6;

在下列选项中,正确的调用是( )。

A. int a=15; int n=fun6(&a); B. int a = 15; cout<<(&pf)(a); C. cout<<(?pf)( 256 ); D. cout << ?pf( 256 ); 19. 下列程序段执行后a与b的值分别为( )。

int a=110, b=101; a=a^b; b=a^b; a=a^b;

A. 110 101 B. 6 5 C. 5 6 D. 101 110 20. 有如下说明语句:

struct point

{int x; int y;}p;

则正确的赋值语句是( )。 A.point.x=1; point.y=2; B. point={1,2}; C. p.x=1; p.y=2; D.

二、 写出下列程序的执行结果。(共6小题,每小题5分,共30分)1.

#include using namespace std ; int f(int n) { int p;

if (n == 0 || n == 1) return 1; else { p = 2 * f(n-1) + f(n-2); return p;} }

int main()

{ cout << f(4); cout << endl; return 0; } 2.

#include using namespace std ; int func1(); int func2(); int main()

{ cout << func1() << endl ; cout << func2() << endl ; }

int func1()

{ static int a = 0 ;

《C++程序设计基础》试卷第 3 页 共 8 页

p={1,2}; static int b = 1 ; a ++ ; b ++ ;

cout << a << '\\t' ; cout << b << '\\t' ; return a + b ; }

int func2()

{ static int a = 0 ; static int b = 1 ; a ++ ; b ++ ;

cout << a << '\\t' ; cout << b << '\\t'; return a + b ; } 3.

#include using namespace std ; void Three(int n) {

int i,t;

int num[100];

for(i=0,t=n;t!=0;i++) {

num[i]=t%3; t=t/3; }

if(0==n) cout<=0;i--) {

cout<

cout<

int main() {

Three(20); } 4.

#include using namespace std ;

《C++程序设计基础》试卷第 4 页 共 8 页

int main()

{ int i, s = 0;

for( i=0; i<5; i++ ) switch( i )

{ case 0: s += i; break; case 1: s += i; break; case 2: s += i; default: s += 2; }

cout<<\} 5.

#include using namespace std;

void f( const int*, int, int ); int main() {

int a[][3] = { 0, 1, 2, 3, 4, 5, 6, 7, 8 }; f( *a, 3, 3 ); }

void f( const int* a, int row, int col ) {

int i, j;

for( i=row-1; i>=0; i-- ) for( j=0; j

cout<<*(a+i*col+j); cout<

#include using namespace std; void print(int w) {

int i; if(w!=0) {

print(w-1);

for(i=1;i<=w;i++) cout<

void main() {

《C++程序设计基础》试卷第 5 页 共 8 页

2016-2017(1)C++程序设计基础

………………………号…位…座………线…………………级…班…业…专……………)题封…答…不…院内…学线……封…密…(…………………………号密学………………………名…姓…………………诚信应考,考试作弊将带来严重后果!
推荐度:
点击下载文档文档为doc格式
12wvl57juv44s0w0d4ij47hq70zb09011vf
领取福利

微信扫码领取福利

微信扫码分享