填空题下列程序中需要清理动态分配的数组,划线处应有的语句是 【13】 。#include<iostream, h>class person int age, tall;public: person() age= 0; tall= 40; cout<<"A baby is born. "<<end1; person(int i) age=i, tall=40, cout<<"A old person. "<<end1; person(int i, int i) age = i; tall = j; cout <<" a old person with tall. "<< end1; ~person( ) cout<<" person dead. "<<end 1; void show() cout<<"age= "<<age<<" ,tall= "<<tall<<end1; ;void main() person * ptr; ptr = new person[3]; ptr[0]=person ( ) ptr[1]=person(18); ptr[2]=person(20,120); for(int i=0;i<3; i++) ptr[i]. show( ); ______
填空题如果表达式x=y*z中的“*”是作为成员函数重载的运算符,采用运算符函数调用格式,该表达式还可以表示为{{U}} 【8】 {{/U}}。
填空题将下面程序补充完整。
#include <iostream>
using namespace std;
class Base{
public:
{{U}} 【14】 {{/U}}fun(){return 0;} //声明虚函数
};
class Derived:public Base{
public:
x,y;
void SetVal(int a,int b){}
int fun(){return x+y;}
};
void{{U}} 【15】 {{/U}}SetVal(int a,int b){x=a;y=b;} //类Derived成员函数
void main(){
Derived d;
cout<<d.fun()<<endl;
}
填空题栈和队列通常采用的存储结构是{{U}} 【1】 {{/U}}。
填空题虚函数必须是类的{{U}} 【10】 {{/U}}。
填空题以下程序的结果为【 】。
#include”iostream.h”
template<typename T >
T total(T * data)
{
T s=0;
while( * data)
{
s+= * data ++;
}
return s;
}
int main( )
{ int x[ ]= { 2,4,6,8,0,12,14,16,18 };
cout < < total(x);
return 0;
cout < < end1;=
填空题执行语句序列
char strl[10]="ABCD",str2[10]="XYZxyz";
for (int i=0; strl[i]=str2[i]; i++)
后,数组str1中的字符是XYZxyz,数组str2中的字符串是{{U}} 【6】 {{/U}}。
填空题下列程序的输出结果是{{U}} 【10】 {{/U}}。
#include<iostream>
using namespace std;
void fun(int
}
int main()
{
int num= 500;
fun(num);
cout<<num<<endl;
return O;
}
填空题从实现的角度划分,C++所支持的两种多态性分别是 【13】 时的多态性和 【14】 时的多态性。
填空题以下程序调用findmax()函数返回数组中的最大值。请填空完成此函数。
#include〈iostream〉
using namespace std;
int findmax(int*a,int n)
{
int +p、*s;
for(p=a,s=a;p-a〈n;p++)
if(〈u〉 【8】 〈/u〉)
*s=*p;
return(*S);
}
int main()
{
int x[5]={12,21,14,16};
cout〈〈findmax(X,5)〈〈end1;
return 0;
}
填空题表达式8&3的结果是 【14】 。
填空题非成员函数应声明为类的{{U}} 【9】 {{/U}}函数才能访问这个类的private 成员。
填空题在下面横线上填上适当的语句,完成程序。
#include <iostream>
using namespace std;
class Base
{
int x;
public:
Base(int i){ x=i;}
~Base(){}
};
class Derived : public Base
{
public:
______//完成类Derive构造函数的定义
};
int main()
{
Derived Obj;
return 0;
}
在横线处应填入的语句是______。
填空题一个类中有
________
个析构函数。
填空题main函数中发生编译错误的语句是______。 #include<iostream.h> class A public: int a; const int b; A( ):a(10),b(20) void fun( )const cout<<"a="<<a<<"/tb="<<b<<endl; ; void main( ) A obj1; const A*ptr=new A; ptr= ptr->a=100; ptr->fun( );
填空题有以下程序:
#include <iostream>
using namespace std;
const xnt N=5;
int fun(char *s,char a,int n)
{
int j;
*s=a;j=n;
while(a<s[j])
j--;
return j;
}
int main()
{
char s[N+1];
int k;
for(k=0;k<=N;k++)
s[k]='A'+k+1;
cout<<fun(s,'E',N)<<end1;
return 0;
}
运行后的打印结果是{{U}} 【8】 {{/U}}。
填空题多继承情况下,派生类对基类成员的访问会出现二义性。解决二义性的方法是
________
、
________
和
________
。
填空题下面程序的输出结果是 【13】 。 #include <iostream> using namespace std; class A int a, b; public: A() a = b = 0; A(int aa, int bb ) : a(aA) , b(bB) cout <<"a="<<a<<","<<"b="<<b<<","; ~A() cout<<"D"; ; int main ( ) A x, y(2, 3); return 0;
填空题软件危机出现于60年代末,为了解决软件危机,人们提出了{{U}} 【3】 {{/U}}的原理来设计软件,这就是软件工程诞生的基础。
填空题使用VC++6.0打开考生文件夹下的源程序文件1.cpp,该程序运行时有错误,请补充程序中的丢失部分,使得程序运行。可以在修改处增加或者删除一条语句。 本程序完成以下功能: (1)获得输入的两个数字d1,d2(d1=6,d2=1)。 (2)输出两个中较大的一个(输出6)。 (3)计算d1/d2如果d2等于0,返回-1(输出结果6)。 (4)输出d1+d2的结果(输出结果7)。 (5)输出d1+1的结果(输出结果7)。 (6)输出d2-1的结果(输出结果0)。 注意:错误的语句在/********error********/的下面。修改该语句即可。其他的语句不能修改。 试题程序: #include<iostream.h> void main() int d1; int d2; int d3; cout<<"please input two number:"<<end1; cin>>d1>>d2; /********error********/ d3=(d1(d2)?d1:d2; cout<<"Max data is:"<<d3<<end1; //计算d1/d2如果d2等于0,返回-1 /********error********/ d3=(d2)?d1/d2:-1; cout<<"d1/d2="<<d3<<end1; /********error********/ d3=(--d1)+(d2++); cout<<"d1+d2="<<d3<<end1; cout<<"d1+1="<<d1<<end1; cout<<"d2-1="<<d2<<end1; return;