不用去学校,就能修名校专科/本科学历,国家承认 学信网可查,查看详情>>>
学习推荐全国2010年1月高等教育自学考试C++程序设计试题
课程代码:04737
一、单项选择题(本大题共20小题,每小题1分,共20分)
在每小题列出的四个备选项中只有一个是符合题目要求的,请将其代码填写在题后的括号内.错选、多选或未选均无分.
1.在C++中,头文件扩展名为( )
A..cpp
B..h
C..1ib
D..obj
2.下列符号中,不属于分隔符的是( )
A.,
B./
C.;
D.{}
3.可替换#definePI3.1415926的语句是( )
A.float PI 3.1415926;
B.const float PI=3.1415926;
C.const PI(3.1415926);
D.const 3.1415926;
4.布尔类型标识符是( )
A.void
B.short
C.long
D.bool
5.下列不是C++语言的基本数据类型的是( )
A.字符类型
B.整数类型
C.逻辑类型
D.枚举类型
6.C++允许在结构中定义函数,这些函数称为( )
A.静态函数
B.构造函数
C.析构函数
D.成员函数
7.设函数void inc(int)将形参加1,如有整型变量int i=10;则执行inc(i);后,i的值为( )
A.9
B.10
C.11
D.未知
8.下列哪种默认参数的声明是不正确的( )
A. int max(int a,int b,int c,int d=0);
B. int max(int a,int b,int c=0,int d=0);
C. int max(int a=0,int b,int c=0,int d=0);
D. int max(int a,int b=0,int c=0,int d=0);
9.设int &max(int &,int &)返回两参数中较大者,如有两整型变量int a=10;int b=15;在执行max(a,b)++后,a,b值分别为( )
A.10,15
B.11,15
C.10,16
D.1l,16
10.包含哪种语句的函数不能声明为内联函数( )
A.循环
B.变量自增自减
C.if...else…
D.变量声明
11.定义函数模板中使用的参数类型标识符需使用下列哪组符号括起来( )
A.<>
B.""
C.()
D.{}
12.一个类拥有多个构造函数,则这些构造函数间为( )
A.重载关系
B.重复关系
C.拷贝关系
D.无关系
13.对于拷贝构造函数point::point(point& p),下列说明正确的是( )
A.该函数只能访问P的私有成员
B.该函数不能访问P的公有成员
C.该函数可以访问P的私有和公有成员
D.该函数不能访问P的成员
14.使用delete[]删除对象数组时,描述正确的是( )
A.数组中各元素都调用析构函数
B.数组中各元素都调用构造函数
C.不调用析构函数
D.只有首元素调用析构函数
15.下列哪个指令属于条件编译指令( )
A. #elif
B. #error
C. #pragma
D. #include
16.设类Test中存在成员static int x,则下列哪种初始化方式是正确的( )
A.Test::int x=25;
B.int x=25;
C.int Test::x=25;
D.int Test x=25;
17.下列关于友元的描述错误的是( )
A.成员函数不可作友元
B.类可以作友元
C.普通函数可以作友元
D.静态函数可以作友元
18.在继承中,派生类拥有的基类个数为( )
A.0个
B.1个
C.多个
D.至少1个
19.基类中的protected成员,通过public派生,其在派生类中的可见性为( )
A.不可访问
B.private
C.protected
D.public
20.下列哪个不是面向对象的关键要素( )
A.抽象性
B.结构性
C.封装性
D.多态性
三、改错题(本大题共5小题,每小题4分,共20分)
下面的每题中有一处错误,请用下横线标出错误所在行并给出修改意见
41.#include<iostream.h>
#define PI 3.14;
void main()
{
double i;
int r;
cout<<″输入圆形半径:″;
cin>>r;
i=2 * PI * r;
cout<<″圆形周长=″<<i<<endl;
i=PI * r * r;
cout<<″圆形面积=″<<i<<endl;
}
42.#include <iostream.h>
class A
{
private:
int x,y;
public:
A(int a=0,b=1);
void Show();
};
A::A(int a,int b)
{
x=a;
y=b;
}
void A::Show()
{
cout<<″x=″<<x<<endl;
cout<<″y=″<<y<<endl;
}
43.#include <iostream.h>
class A
{
unsigned char var;
public:
A(unsigned char x){
var=x:
}
void print(){
cout<<″var=″<<var;
}
};
void main()
{
A a(″x″) ;
a. print ();
}
44. #include < iostream. h>
class Class
{
public:
void print(int a,int b) {
cout< < ″int:″ < < a < < endl;
cout < < ″int:″ < < b < < endl;
}
void print(char * a,char * b) {
cout< < ″string:″ < < a < < endl;
cout < <″ string:″ < < b < < endl;
}
void print(char * a,unsigned int b){
cout < < ″string:″ < < a < < endl;
cout < < ″int:″ < < b < < endl;
}
};
void main()
{
Class cls;
cls. print(10,20);
cls. print(′c′,1);
cls. print(′x′,′y′);
cls. print(″Hello!″,0);
}
45. #include < iostream. h >
class Class
{
private:
int val;
public:
void func( int a)
{
val = a;
}
};
void main()
{
Class * cls ;
cls - > func(10) ;
[1]
转载请注明:文章转载自(http://www.gdzkw.net)