2011-2012学年第二学期C++程序设计复习提纲(3)

2019-03-22 15:07

system(\; return 0; }

21. #include using namespace std; class A {public:

A(int i=0){m=i;cout<<\;} void set(int i) {m=i;}

void print() const {cout<

A(const A &s){m=s.m;cout<<\;} ~A(){cout<<\;} private:

int m;

};

int main()

{const int N=5; A my; my=N;

my.print(); return 0;}

五、程序填空

1.下面程序的功能是定义类sample,并输出其数据成员,请填空: #include using namespace std; class sample { int m;

static int n;

public:

sample(int i){n++;m=i;} int disp() {return m;} };

int sample::n=5; int main()

{ sample s1(3),s2(4);

cout<

2.斐波那契数列的第1项和第2项都是1。下面的程序用来输出斐波那契数列1,1,2,3,5,8,13,21,...第7项的值,请选择正确答案填入程序空白处。

1,i??2?f(i)?斐波那契数列的构成规律: ?f(i?1)?f(i?2),i?2?#include

using namespace std; long fib(int g)

{switch(g)

第 11 页 共 17 页

{case 0: return 0; case 1:

case 2: return 1; }

return (fib(g-1)+fib(g-2)); }

main()

{long int k; k=fib(7);

cout<<\;}

3.下面程序的功能是重载“--”(自减1)运算符,使对象s的数据成员n值减1。 #include class sample {int n;

public: sample(int m) {n=m;}

sample(){n=0;}

sample operator--(int) {sample s;n--; return s; }

void disp(){cout<<\;} };

void main() {

sample s(10); (s--).disp(); s.disp(); }

4.下面的程序的功能是输出300~500之间所有素数。本程序中利用自定义函数prime()判断一个整数是否为素数(如果整数x不能被2~x之间的任意一个数所整除,则x是素数)。要求每行输出11个素数。 #include using namespace std; bool prime(int m); int main()

{int k, s=0;

for(k=301;k<500;k+=2) if (prime(k))

{cout<

if(s==0) cout<

cout<

for(i=2;m%i!=0;i++); return(m==i);}

5.该程序的功能为模拟秒表,每次走一秒,满60秒进一分钟,此时秒数又从0开始算。程序中定义了一个类Time,包含数据成员minute(分)和sec(秒)。要求输出分和秒的值

第 12 页 共 17 页

#include using namespace std; class Time {public:

Time(){minute=0; sec=0;}

Time(int m,int s){ minute=m;sec=s;} Time operator++(int);

void display(){cout<

int minute,sec; };

Time Time::operator++(int); {Time temp=*this; if(++sec>=60)

{ sec%=60;minute++;} return temp;} int main()

{Time t1(23,59),t2;

cout<<\;t1.display(); t2=t1++;

cout<<\;t2.display(); cout<<\;t1.display(); system(\; return 0; }

六、编程题

1.定义一个订书单中使用的图书信息类Book,每个Book类对象代表的是订书单中的一种图书,包含内容如下:

(1)数据成员BookID(字符串),表示图书编号;数据成员Quantity(int型),表示订购的图书数量;数据成员Price(float型),表示图书单价。

(2)构造函数,功能是使用参数为数据成员赋值;

(3)成员函数Total,功能是计算一个图书对象的应付金额;

(4)成员函数BookInfo,功能是在一行上显示一个图书对象的图书编号、订书数量和单价。 (5)定义一个普通函数Sum,该函数的功能是计算一张订书单上所有图书的总金额。 (6)定义main()函数,主要功能是:

①定义一个Book类的对象数组,用于存放一张订书单的信息; ②从键盘输入订书单上每种图书的信息;

③调用Sum()函数,计算订书单上所订图书的总金额; ④按如下格式显示一张订书单上的订书信息和总金额

#include #include using namespace std; class Book {public:

Book(string bid,int qu,float pr);

第 13 页 共 17 页

float total(){return quantity*price;} void BookInfo(); private:

string BookID; int quantity; float price; };

Book::Book(string bid,int qu,float pr) {BookID=bid;quantity=qu;price=pr;} void Book::BookInfo()

{cout<

for(int i=0;i

int main()

{Book b[3]={Book(\,20,15.4),Book(\,35,21.7),Book(\,78,42.1)}; cout<<\订书单====================\;

cout<

cout<<\; cout<<\总额=\,3)<

system(\; return 0; }

2.设计一个长方体类box,其数据成员包括length(长)、width(宽)、height(高)。要求用成员函数实现以下功能:

(1)由键盘输入长方体的长、宽、高; (2)计算并输出长方体的体积; (3)计算并输出长方体的表面积 #include using namespace std; class box {public:

box(){cout<<\;cin>>length; cout<<\;cin>>width; cout<<\;cin>>height;}

void getarea() {

cout<<\<

void getvolume(){cout<<\;} private:

double length,width,height; };

3.设计一个复数类complex,其数据成员包括real(实部)、image(虚部)。

第 14 页 共 17 页

要求:

(1)用成员函数实现以下功能:

? 定义默认函数,复数的实部与虚部初始化为0;

? 定义带参构造函数,复数的实部与虚部用函数的参数初始化; ? 重载运算符“+”,用于实现两个复数的相加运算。 (2)重载流插入运算符,用于输出复数,,输出形式为a+bi(a、b分别为实部和虚部,当b为负数时输出a-bi)。 #include using namespace std; class complex {public:

complex(){real=0;image=0;}

complex(int r,int i){real=r;image=i;} complex operator+(complex & c);

friend ostream &operator<<(ostream &output,complex &c); private:

int real,image; };

complex complex::operator+(complex &c)

{return complex(real+c.real,image+c.image);} ostream &operator<<(ostream &output,complex &c) {if(c.real!=0)

output<

{ if(c.real==0) output<<0<0) { if(c.image==1) if(c.real!=0)

output<<\; else

output<<\; else

output<<\;} else

{ if(c.image==-1)

output<<\; else

output<

int main() {complex c[]={complex(0,0),complex(0,1),complex(0,-1),complex(1,0),complex(-1,0),complex(1,1),complex(-1,-1),complex(1,-1),complex(-1,1)}; for(int i=0;i<9;i++) cout<

system(\; return 0; }

4.编写一个程序计算正方体(cube)和圆柱体(cylinder)的体积。 要求:

(1)定义一个抽象类shape,在其中定义求体积的纯虚函数volume()。

第 15 页 共 17 页


2011-2012学年第二学期C++程序设计复习提纲(3).doc 将本文的Word文档下载到电脑 下载失败或者文档不完整,请联系客服人员解决!

下一篇:二年级数学上1-6单元测验卷

相关阅读
本类排行
× 注册会员免费下载(下载后可以自由复制和排版)

马上注册会员

注:下载文档有可能“只有目录或者内容不全”等情况,请下载之前注意辨别,如果您已付费且无法下载或内容有问题,请联系我们协助你处理。
微信: QQ: