(8)有如下的函数定义:
int Xfun(int *a, int n){
int x=*a;
for(int *pa=a+1; pa<>
if(*pa>x) x=*pa;
return x;
}
若执行了语句
int x[5]={23,46,78,55,16};
后,通过表达式Xfun(x,5)调用该函数,则得到的返回值为 【8】 。
(9)有如下的函数定义:
int Xfun(int x){
int y=x;
{int x=10; y+=x;}
return x+y;
}
通过表达式Xfun(5)调用该函数,则得到的返回值为 【9】 。
(10)假定Xcs是一个类,该类中一个成员函数的原型为“Xcs *abc();”,则在类外定义时对应的函数头为 【10】 。
(11)请将下面的类Date的定义补充完整,使得由语句
Date FirstDay;
定义的对象FirstDay的值为2010年1月1日。
class Date{
public:
Date( 【11】 ):year(y),month(m),day(d){ }
private:
int year,month,day; //依次表示年、月、日
};
(12)请将下面的程序补充完整,使得程序输出“飘是张娜的书”。
#include
using namespace std;
class Book{
public:
Book(char *str) {strcpy(title,str);}
【12】 void PrintInfo() {cout<< p>
protected:
char title[50];
};
class MyBook:public Book{
public:
MyBook(char *s1,char *s2="张娜"):
【13】 {strcpy(owner,s2);}
virtual void PrintInfo() {cout<< p>
private:
char owner[10];
};
int main(){
Book *prt=new MyBook("飘");
prt->PrintInfo();
return 0;
}
(13)在有理数类Rational中重载插入运算符<<,以便按a/q形式输出。请将<<运算符函数的定义补充完整。
class Rational{
public:
Rational(int aa, int qq):a(aa),q(qq){ }
friend 【14】 operator<<(ostream &out, Rational &x)
{
return (out<<<' p ?<<>
}
private:
int a,q;
};
(14)下面的函数定义是某函数模板能够生成的函数实例
int square(int n) {return n*n;}
double square(double n) {return n*n;}
由此可知,该函数模板的定义是 【15】 。