教学文库网 - 权威文档分享云平台
您的当前位置:首页 > 精品文档 > 互联网资料 >

2002年C++程序设计试题(2)

来源:网络收集 时间:2026-08-24
导读: #include class A{ public:int x; void Show(){cout class B{ public:int y; void Show(){cout {C c1; c1.B::Show();c1.A::Show(); } 8.(4分)下面程序的输出是 #include class A{ protected: int x; public: A(){x

#include class A{ public:int x;

void Show(){cout <<\类就是A类\\n\};

class B{ public:int y;

void Show(){cout<<\类就是B类\\n\class C: public A,public B {public:int y;}; void main(void)

{C c1; c1.B::Show();c1.A::Show(); } 8.(4分)下面程序的输出是 #include class A{ protected: int x;

public: A(){x =1000;}

virtual void p(){cout <<\ virtual void p2(){cout<<\

};

class C:public A{

int z;

public: C(){z=3000;}

void p(){cout <<\

virtual void p2(){cout<<\

};

void main(void ){ C c;

A a,*pa=&a; pa->p();

pa=&c;pa->p();}

9.(3分)以下程序的运行结果是 #include void p1(char s[ ],int i) { if(s[i]!=0) { p1(s,i+1); cout<

6

void p2(char s[ ],int i) { cout<

if(s[i]!=0)p2(s,i+1); }

void main(void)

{ char str[]=\ cout << str << \ p1(str,0);cout <<'\\n'; p2(str,0);cout <<'\\n'; }

10.(3分)以下程序的运行结果是 #include class R{

private: int Left; public:

R(int L) {Left =L; cout<<\ R() {Left =0; cout<<\

void Print(void){cout<

~R(){if (Left!=0)cout<<\void main(void ){

R r1(10),r2; r1.Print; r2.Print();}

11.(4分)在当前目录中有文本文件file1.txt,文件内容为某班前10名的C++成绩,第一个10表示文件中后面有10个数,如下: 10 96 95 94 93 92 88 87 86 86 85

执行下面的程序后,文件file2中的内容是 文件file2中的内容表示 。

#include void main(void)

{ float x,number,sum=0; ifstream f1(\ofstream f2(\f1>>number;

while(f1>>x) sum+=x;

if(number!=0) f2<

7

三、完善程序(答题请注明序号)

1.(6分)用for语句实现如下程序段相同的功能:

A. (2分)

int count=0; loop:{;;;};count++;

if (count<100) goto loop

B. (2分)

int count=-100;

while (count<0){ count++;};

C. (2分)

count=-10; do

{ count++;

}while(count<10);

2. (4分)下面的函数的功能是从数组a中找出最大值和最小值,将找出的最大值用return语句返回,而将求出的最小值通过参数min带回。完善函数体。 float FindMaxMin( float a[ ], int n, float *min) {

float max; //定义存放最大值的变量 max=*min=a[0]; //对最大值最小值初始化

for(int i=1; i

}

return max; //利用函数值返回最大值 }

main() { int n;

float a[200];

float max, *min=&a[0];

cout<<\请输入的 n 数值,n小于200\cin>>n;

// 输入n 个数,输出最大值及最小值

8

// 插入相应的程序 2分

}

3(4分)若一链表结点结构如下: struct Node{ int data;

Node *next;};

完善如下DeleteNode()函数;函数的功能为:若从链表的首指针 h所指向的链表中找到一个结点的数据为x时,则从该链表中删除该结点。指针 h的值为0(NULL)时,表示链表为空。允许x不在链表中。

Node * DeleteNode(Node *h, int x) { Node *p,*q;

if(h == 0) return h; if(h->data==x)

{ if(h->data==x) { } //插入相应的程序 3分 } else

{ }

//插入相应的程序 3分 }

return h; }

四、(10分)根据题目要求写出程序 1.(4分)用两种不同的方法求出二个整数的最大公约数。且求二个整数的最大公约数用函数来实现,该函数放在一个头文件中(如 xxx.h)。二个整数从键盘输入。 (1)写出二个求整数的最大公约数函数;放在一个头文件中(如 xxx.h)//2分 (2)写出主函数;//2分

2.(6分)描述一个复数类Complex,私有数据为实部Real和虚部Imag 要求Complex类能提供如下操作(方法):

(1) 有构造函数,缺省时实部Real和虚部Imag置为0;//1分 (2) 能修改并读取Real的值; //1分 (3) 能修改并读取Imag的值 //1分

(4) 重载运算符 +=,完成两个复数的加法;//1分

9

(5) 重载运算符 -=,完成两个复数的减法;//1分 (6) 重载运算符 *=,完成两个复数的乘法;//1分

10

…… 此处隐藏:343字,全部文档内容请下载后查看。喜欢就下载吧 ……
2002年C++程序设计试题(2).doc 将本文的Word文档下载到电脑,方便复制、编辑、收藏和打印
本文链接:https://www.jiaowen.net/wendang/443854.html(转载请注明文章来源)
Copyright © 2020-2025 教文网 版权所有
声明 :本网站尊重并保护知识产权,根据《信息网络传播权保护条例》,如果我们转载的作品侵犯了您的权利,请在一个月内通知我们,我们会及时删除。
客服QQ:78024566 邮箱:78024566@qq.com
苏ICP备19068818号-2
Top
× 游客快捷下载通道(下载后可以自由复制和排版)
VIP包月下载
特价:29 元/月 原价:99元
低至 0.3 元/份 每月下载150
全站内容免费自由复制
VIP包月下载
特价:29 元/月 原价:99元
低至 0.3 元/份 每月下载150
全站内容免费自由复制
注:下载文档有可能出现无法下载或内容有问题,请联系客服协助您处理。
× 常见问题(客服时间:周一到周五 9:30-18:00)