南开大学08-09 - 一 - C++试卷 - A卷 -

2020-04-14 00:54

2008-2009第一学期《面向对象程序设计2-1》期末试卷(A卷)

南开大学理科《面向对象程序设计2-1》 2008级期末考试试卷(A卷)2009年1月

任课教师______学院________系别(班级)_________姓名________学号_______

题 目 一四 卷面成绩 二 三 分 数 得 分 (注 1 11 一、单项选择(每空1分,共20分)

意选项填写到下面表格中!) 2 12 3 13 4 14 5 15 6 16 7 17 8 18 9 19 10 20 1.将小写字母n赋值给字符变

one_char,正确的操作

( )

A) one_char='\\n'; B) one_char=\

C) one_char=110; D) one_char='N'; 2.已知:char ch=049; cout<

A) 49 B) 1 C) 41 D) 程序报错 3.已知:int x=2; 则cout<<(x<<2);的输出结果为( ) A) 4 B) 8 C) 0 D) 1 4.在C++语言中,自定义的标识符( ) A) 能使用关键字并且不区分大小写

B) 不能使用关键字并且不区分大小写 C) 能使用关键字并且区分大小写

D) 不能使用关键字并且区分大小写

5.判断字符变量c不是字母的逻辑表达式为( ) A) c>='a'&&c<='z'||c>='A'&&c<='Z'

B) c<'a'||c>='z'&&c<'A'||c>'Z'

C) c<'A'||c>'z'

D) !(c>='a'&&c<='z'||c>='A'&&c<='Z') 6.下列语句正确的是( )

A) char str[4]={\ B) char str[4]={ 'w', 'o', 'r', 'd', '\\0'}; C) char str[6]=\ D) char str[5]; str=\7.已知:int a=10,*p=&a; 则p的值为( )

A) 10 B) a的值 C) a的地址 D) 随机值 8.下列语句正确的是( )

A) int a,*p; *p=&a; B) int a,*p; p=&a;

A卷 第1页 (共9页)

2008-2009第一学期《面向对象程序设计2-1》期末试卷(A卷)

C) int a,*p; &a=p; D) int a,*p; a=*p; 9.已知定义:int a[5],*p;则下列描述错误的是( )

A) 表达式p=p+1是合法的 B) 表达式a=a+1是合法的 C) 表达式p-a是合法的 D) 表达式a+2是合法的 10.下列程序段执行后,x的值为( ) x=0;

for(i=0;i<90;i++) if(i) x++;

A) 0 B) 30 C) 89 D) 90 11.一个指针类型的变量占用内存的字节数是( )

A) 1 B) 4 C) 8 D) 由指向地址的类型决定 12.当函数定义时指定的函数返回值类型为void时,表示( )

A) 函数没有返回值 B) 函数肯定没有return语句 C) 函数肯定含有return; D) 函数返回任意类型的值 13.函数原型中,不必要给出的是( ) A) 函数参数的类型和参数名 B) 函数名 C) 函数的类型 D) 函数体 14.一个函数的参数的默认值应该在( )中给出

A) 函数定义 B) 函数原型 C) 函数定义或原型 D) 函数调用 15.下列关于函数的描述正确的是( )

A) 函数必须要有参数和返回值 B) 函数体中只能含有一条return语句 C) 函数通过return语句至多能够返回一个值 D) 函数必须定义在先,调用在后 16.关于内联函数的描述错误的是( )

A) 函数定义或函数原型前加上关键字“inline”,该函数成为内联函数 B) 内联函数一般是一个小函数

C) 内联函数在编译时进行内联置换,减少了调用的开销 D) 内联函数在运行时仍然被调用

17.有关函数的形参和实参描述错误的是( )

A) 函数调用时,实参的值传递给相应的形参,形参在函数体内的改变并不影响实参 B) 因为可以设定函数的默认参数值,所以调用函数时,实参的个数可以少于形参 C) 调用重载函数时,根据参数的不同决定去调用哪一个重载函数 D) 实参是数组名时,表示将数组的所有元素的值都传递到了函数中 18.下面程序段的输出结果为( ) for(int i=4;i<=10;i++) {

if(i%3!=0) continue; cout<

A) 45 B) 457810 C) 69 D) 45678910

A卷 第2页 (共9页)

2008-2009第一学期《面向对象程序设计2-1》期末试卷(A卷)

19.已知:char *s=\则cout<

A) abcde B) cde C) c D) abc 20.已知:char *s=\则cout<<*(s+2);输出为( ) A) abcde B) cde C) c D) abc

二、填空题(每空1分,共20分) (注意将结果填写到下面相应横线上!)

得 分 ① ② ③ ④ ⑤ ⑥ ⑦ ⑧ ⑨ ⑩ ⑾ ⑿ ⒀ ⒁ ⒂ ⒃ ⒄ ⒅ ⒆ ⒇

1.已知:char *p=\char s[10]=\则strlen(p)的值为 ① ,strlen(s)的值为 ② , sizeof(s)的值为 ③ ,

sizeof(\的值为 ④ 2.已知:int x=10; 则表达式 50<=x<=100的值为 ⑤

3.已知:int x=15; cout<

5.已知:int *p; 为p动态分配内存且为该内存赋值为整数10的语句是: ⑩ 。 6.具有相同函数名但参数表不完全相同的函数称为 ⑾ 。

7.已知:void fun(int a,int b=2,int c=3){cout<

9.C++源程序的扩展名是.cpp,经过 ⒃ 生成目标文件的扩展名是 ⒄ ,再经过 ⒅ 生成可执行程序,最终执行的是.exe文件。

10.已知:char a[7]=\则cout<

三、读程序写结果(每空3分,共30分) (注意将结果写在下面相应横线上!)

得 分 ① ② ③ ④ ⑤

⑥ ⑦ ⑧ ⑨ ⑩

1. 写出下面程序的运行结果。 #include void main()

A卷 第3页 (共9页)

2008-2009第一学期《面向对象程序设计2-1》期末试卷(A卷)

{ int x=5,y,k;

float z=15,w; y=x++; w=z/y+7%x; k=x||w++;

cout<<\ cout<<\ }

运行结果为:___①___

___②___

2. 写出下面程序的运行结果。 #include int f(int n) {

if(n==1||n==2) return 2; else return f(n-1)+f(n-2); }

void main() {

int i,j=0; for(i=4;i<6;i++)

{

j+=f(i);

cout<<\} }

运行结果为:___③

3. 写出下面程序的运行结果。 #include int fun(int *s, int t, int *k) { int i; *k=0; for(i=0;i

int a[10]={876,675,896,101,301,401,980,431,451,777},k; fun(a,10,&k);

A卷 第4页 (共9页)

2008-2009第一学期《面向对象程序设计2-1》期末试卷(A卷)

cout<<\}

运行结果为: ⑤ 4. 写出下面程序的运行结果。 #include

double fun(double a,double b,char c='*') {

double d; switch(c) {

case '+': d=a+b;break; case '-': d=a-b;break; case '*': d=a*b;break; case '/': d=a/b;break;

} return d; }

void main() {

double d=1.0;

d-=fun(fun(2.5,3.5, '+'),fun(3,5), '/'); cout<<\}

运行结果为: ___⑥

5. 写出下面程序的运行结果。 #include void main() {

int a,p=1,s=0;

for(a=1;a<=5;a++) {

p=p*a; s=s+p; }

cout<<\ cout<<\ }

运行结果为: ⑦

6. 写出下面程序的运行结果。

A卷 第5页 (共9页)


南开大学08-09 - 一 - C++试卷 - A卷 -.doc 将本文的Word文档下载到电脑 下载失败或者文档不完整,请联系客服人员解决!

下一篇:汇编浅析高考英语语法讲义

相关阅读
本类排行
× 注册会员免费下载(下载后可以自由复制和排版)

马上注册会员

注:下载文档有可能“只有目录或者内容不全”等情况,请下载之前注意辨别,如果您已付费且无法下载或内容有问题,请联系我们协助你处理。
微信: QQ: