class DERIVED:public BASE{
char c;
public:
DERIVED(char n):BASE(n+1),c(n){}
~DERIVED(){cout< };
int main()
{ DERIVED("X");
return 0;
}
执行上面的程序将输出()
A)XY B)YX C)X D)Y
(10)在进行完任何C++流的操作后,都可以用C++流的有关成员函数检测流的状态;其中只能用于检测输入流状态的操作函数名称是()
A)fail B)eof C)bad D)good
二、填空题
(1)下面程序的打印结果是 [1]
#incude
int f(int);
int main()
{ int i;
for(i=0;i<5;i++)
cout< return0;
}
int f(int i)
{ static int k=1;
for(;i>0;i- -)
k + = i;
return k;
}
(2)在用class定义一个类时,数据成员和成员函数的默认访问权限是 [2]
(3)含有纯虚函数的类称为 [3]
(4)已知intDBL(int n){return n + n;}和longDBL(long n){return n
+n;}是一个函数模板的两个实例,则该函数模板的定义是 [4]
(5)在下面程序的横线处填上适当的语句,使该程序执行结果为10.
#include
class MyClass
{ public:
MyClass(int a){x = a;}
[5] //取x值
private
int x;
};
int main()
{ MyClass my(10);
cout< return 0;
}
三、上机操作题(改错题1道,简单应用1道,综合应用1道)
1.使用VC6打开考生文件夹下的工程proj1,此工程包含一个源程序文件main.cpp,但该程序运行有问题,请改正main函数中的错误,使程序的输出结果为:
member=0
member=5
menber=10
源程序文件main.cpp清单如下:
#include
class MyClass
{
public:
MyClass(int i){member=i;}
void SetMember(int m){member=m;}
int GetMember()const{return menber;}
void print()cont{cout<<"member="< private:
int member;
};
voed main()
{
/* * * * * * * * * * found * * * * * * * * * */
MyClass obj1;
obj1.print();
MyClass obj2(3);
/* * * * * * * * * * found * * * * * * * * * */
obj1.member=5;
/* * * * * * * * * * found * * * * * * * * * */
MyClass.SetMember(10);
obj1.print();
obj2.print();
}
2.请编写一个函数int find(char s[],char t[]),该函数在字符串s中查找字符串t,如果找到,则返回字符串t在字符串s中的位置(整数值);否则返回-1.注意:用数组方式及两重循环来实现该函数.
注意:部分源文件程序已存在文件PROC2,CPP中.
请勿修改主函数main和其他函数中的任何内容,仅在函数find的花括
责任编辑:小草