




版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡介
1、/*定義一個復(fù)數(shù)類,通過重載運(yùn)算符:=、+=、=、+、*、/、= =、!=,直接實(shí)現(xiàn)兩個復(fù)數(shù)之間的各種運(yùn)算。編寫一個完整的程序(包括測試各運(yùn)算符的程序部分)。*/#include "stdio.h"/標(biāo)準(zhǔn)輸入輸出頭文件#include "iostream.h"class Complexfloat Real,Image;public:Complex(float r=0,float i=0)Real=r;Image=i;float GetR()return Real;float GetI()return Image;/后面主函數(shù)要直接調(diào)用私有成員數(shù)據(jù) voi
2、d show()cout<<"Real="<<Real<<'t'<<"Image="<<Image<<endl;Complex operator +(Complex &);/把形參定義為引用,調(diào)用時更方便void operator +=(Complex &);/自加運(yùn)算,返回值為voidComplex operator -(Complex &);void operator -=(Complex &);Complex operator *
3、(Complex &);Complex operator /(Complex &);void operator =(Complex &);int operator !=(Complex &);int operator =(Complex &);/返回真假;Complex Complex:operator +(Complex &c)/此時的函數(shù)名變?yōu)镃omplex:operatorComplex t;/在函數(shù)體內(nèi)可以定義新的類,并把這個臨時的類返回,同樣用打點(diǎn)來訪問t.Real=Real+c.Real;t.Image=Image+c.Image;r
4、eturn t;void Complex:operator +=(Complex &c)Real=Real+c.Real;Image=Image+c.Image;Complex Complex:operator -(Complex &c)Complex t;t.Real=Real-c.Real;t.Image=Image-c.Image;return t;void Complex:operator -=(Complex &c)Real=Real-c.Real;Image=Image-c.Image;Complex Complex:operator *(Complex &
5、amp;c)Complex t;t.Real=Real*c.Real-Image*c.Image;t.Image=Real*c.Image+Image*c.Real;return t;Complex Complex:operator /(Complex &c)Complex t;t.Real=Real*c.Real+Image*c.Image;t.Image=-Real*c.Image-Image*c.Real;float val=c.Real*c.Real+c.Image*c.Image;t.Real=t.Real/val;t.Image=t.Image/val;return t;v
6、oid Complex:operator =(Complex &c)Real=c.Real;Image=c.Image;int Complex:operator !=(Complex &c)int res;/函數(shù)體內(nèi)定義臨時變量res=(c.Real!=Real)&&(c.Image!=Image);return res;int Complex:operator =(Complex &c)int res;res=(c.Real=Real)&&(c.Image=Image);return res;void main()Complex a(3
7、,4),b(6,8),c,d;c=a;/賦值=c.show();d=a+b;/+d.show();c=b-a;/-c.show();c=b;c+=a;/+=c.show();d=b;d-=a;/-=d.show();/c=a;d=a;cout<<endl<<"輸出c和d: n"if(c=d) c.show();d.show();cout<<"c=d"c=b;d=a;cout<<endl<<"輸出c和d: n"if(c!=d) c.show();d.show();cout<
8、;<"c!=d"/cout<<endl;cout<<"a*b: "c=a*b;c.show();cout<<"na/b: "d=b/a;d.show();/在函數(shù)體內(nèi)可以定義新的類,并把這個臨時的類返回,同樣用打點(diǎn)來訪問/*四、下標(biāo)運(yùn)算符 通常用于取數(shù)組中某個元素,可以實(shí)現(xiàn)數(shù)組下標(biāo)越界的檢測等。本題要求通過下標(biāo)運(yùn)算符的重載,實(shí)現(xiàn)讀取數(shù)組中某個元素的作用。它具有如下公有成員函數(shù):1.void Word (char *s ); 動態(tài)生成字符數(shù)組空間,用形參s來對其進(jìn)行初始化。2. char &am
9、p; operaror (int n )給下標(biāo)值為n的數(shù)組元素賦值。下標(biāo)運(yùn)算符 的重載關(guān)鍵是將下標(biāo)值做為一個操作數(shù)。它的實(shí)現(xiàn)非常簡單, 就是用字符指針的首地址str加下標(biāo)值n,然后將相加后的地址返回。3.void disp( ); 實(shí)現(xiàn)將字符指針str指向的字符串輸出到屏幕上。4.用 Word()析構(gòu)函數(shù)來釋放動態(tài)申請的堆空間。*/# include<iostream.h># include<string.h>class Word private :char *str;int len;public : Word(char *s) /void Word (char *s
10、)把原題的void去掉,做構(gòu)造函數(shù) len=strlen(s)+1; str=new charlen; strcpy(str,s); char & operator (int n)/重載,用operator,返回值為引用類型/n是的操作數(shù),即下標(biāo)if(n>=0&&n<len-1)return strn;else cout<<n<<"越界"return strlen-1;void disp() cout<<str<<endl;Word() delete str;void main( )char
11、 *s="china"Word w(s);/用字符串的指針做形參,做構(gòu)造函數(shù)Word("china")w.disp( );int n=strlen(s);while(n>0) wn-1=wn-1-32;n-;w.disp( );cout<<w7;/ 14-3.cpp/*建立一個雙向鏈表,節(jié)點(diǎn)數(shù)據(jù)包括姓名、地址和工資,按工資從小到大的順序排序。參見教材P281 例12.7和教材P192頁*/#include <iostream.h>#include <string.h>class Objectpublic:Obje
12、ct();/可以定義空的構(gòu)造函數(shù)virtual int IsEqual(Object &)=0;/純虛函數(shù)virtual int IsBigger(Object *)=0;/形參為&,實(shí)參直接為變量名/形參為*,實(shí)參為指針或地址virtual void Show()=0;virtual Object();class IntObj: public Objectint data;/工資char *name;char *address;public:IntObj(char *s=NULL,char *a=NULL,int x=0)data=x;if(s)name=new charst
13、rlen(s)+1;/strlen的參數(shù)是指針strcpy(name,s);else name=NULL;if(a)address=new charstrlen(a)+1;strcpy(address,a);else address=NULL;IntObj()if(name) delete name;/析構(gòu)前預(yù)判,很重要if(address) delete address;void SetData(char *s,char *a,int x)/修改數(shù)據(jù)data=x;if(s)delete name;/name本來指向另一個字符串,它開辟的空間長度 /需要人為改變,賦新的值之前要刪除原有空間,重
14、新開辟name=new charstrlen(s)+1;strcpy(name,s);else name=NULL;if(a)delete address;address=new charstrlen(a)+1;strcpy(address,a);else address=NULL;int IsEqual(Object &obj)IntObj &temp=(IntObj &)obj;/為它起個別名if(strcmp(name,)!=0) return 0;/用strcmp函數(shù)比較字符串是否相同if(strcmp(address,temp.address
15、)!=0) return 0;if(data!=temp.data) return 0;return 1;int IsBigger(Object *obj)IntObj *temp=(IntObj *)obj;if(data<=temp->data) return 0;else return 1;void Show()cout<<"姓名: "<<name<<'t'<<"地址: "<<address<<'t'<<"工資=
16、"<<data<<'t'<<endl;class Node/此處Node定義為類,前面都是定義為struct,這個節(jié)點(diǎn)當(dāng)中包含為上面定義 /的類的數(shù)據(jù)成員private:Object *Info;/定義類object的指針Node *Prev,*Next;/定義節(jié)點(diǎn)類型的指針,一前一后public:Node()Info=0;Prev=Next=0; /定義的指針在構(gòu)造函數(shù)中初始化為0Node(Node &node)/定義拷貝的構(gòu)造函數(shù)Info=node.Info;Prev=node.Prev;Next=node.Next;v
17、oid FillInfo(Object *obj)Info=obj;friend class List;class ListNode *Head,*Tail;public:List()Tail=Head=0;List()DeleteList();void AddNode(Node *);Node *DeleteNode(Node *);Node *LookUp(Object &);void ShowList();void DeleteList();void InsertNode(Node *);void List:AddNode(Node *node)if(Head=0)Head=Ta
18、il=node;node->Next=node->Prev=0;elseTail->Next=node;node->Prev=Tail;Tail=node;node->Next=0;Node *List:DeleteNode(Node *node)if(node=Head)if(node=Tail)Head=Tail=0;elseHead=node->Next;Head->Prev=0;elsenode->Prev->Next=node->Next;if(node!=Tail) node->Next->Prev=node-
19、>Prev;else Tail=node->Prev;node->Prev=node->Next=0;return(node);Node *List:LookUp(Object &obj)Node *pn=Head;while(pn)if(pn->Info->IsEqual(obj) return pn;pn=pn->Next;return 0;void List:ShowList()Node *p=Head;while(p)p->Info->Show();p=p->Next;void List:DeleteList()Nod
20、e *p,*q;p=Head;while(p)delete p->Info;q=p;p=p->Next;delete q;void List:InsertNode(Node *p)Node *pn=Head,*p1;if(Head=0)/空表Head=Tail=p;Head->Next=Tail->Prev=0;return ;if(Head->Info->IsBigger(p->Info)/小于頭節(jié)點(diǎn)p->Next=Head;Head->Prev=p;Head=p;return ;pn=p1=Head;while(pn->Next&
21、amp;&pn->Info->IsBigger(p->Info)=0)/尋找插入位置p1=pn;pn=pn->Next;if(pn->Info->IsBigger(p->Info)=0)/最末尾Tail->Next=p;p->Prev=Tail;Tail=p;p->Next=0;/注意else/一般情況/插入p1和pn之間p->Prev=p1;p1->Next=p;pn->Prev=p;p->Next=pn;void main()IntObj *p;Node *pn,*pt,node;List list
22、;char *name="jack","tom","john","mary","Sun"char *address="sh","bj","nj","sz","gz"for(int i=1;i<6;i+) p=new IntObj(namei-1,addressi-1,6-i+100); pn=new Node; pn->FillInfo(p); list.InsertNode(pn);
23、 list.ShowList(); cout<<"n" IntObj da; da.SetData("tom","bj",104); pn=list.LookUp(da); if(pn) pt=list.DeleteNode(pn); list.ShowList(); cout<<"n" if(pn) list.InsertNode(pt); list.ShowList(); cout<<"n"/*1.name本來指向另一個字符串,它開辟的空間長度需要人為改變
24、,賦新的值之前要刪除原有空間,重新開辟.*/*編寫一個程序,輸入N個學(xué)生數(shù)據(jù),包括學(xué)號、姓名、C+成績,要求輸出這些學(xué)生的數(shù)據(jù)、平均分與成績等級。提示:設(shè)計(jì)一個學(xué)生類Stud,除了包括id(學(xué)號)、name(姓名)和C(成績)數(shù)據(jù)成員外,還有兩個靜態(tài)成員數(shù)據(jù)sum和num,分別存放總分和人數(shù),另有兩個普通成員函數(shù)setdata()和print(),分別用于給數(shù)據(jù)成員賦值和輸出數(shù)據(jù)成員的值,另有一個靜態(tài)成員函數(shù)avg(),它用于計(jì)算平均分,并輸出平均分。同時設(shè)計(jì)一個友元函數(shù),輸出成績對應(yīng)的等級:大于等于90:優(yōu);8090:良;7079:中;6069:及格;小于60:不及格。在main()函數(shù)中定
25、義了一個對象數(shù)組用于存儲輸入的學(xué)生數(shù)據(jù),設(shè)計(jì)一個完整的程序。*/#include "stdio.h"#include "iostream.h"#include "string.h"class Studint id;char *name;int cpp;public:static float sum,num;/定義兩個靜態(tài)成員數(shù)據(jù),數(shù)值需要不斷累加的sum,可以定義 /為靜態(tài),使每次修改的值都可以被保留,相對地,定義它的靜態(tài)成員函數(shù)Stud()name=NULL;num+;Stud()if(name) delete name;num-;
26、void setdata(char *s,int m_id,int m_cpp);void print();static float avg(); friend void printgrade(Stud &stu);/按題目要求,定義友元函數(shù)輸出,可以 /訪問類的任何成員;float Stud:sum=0;/定義靜態(tài)變量,原型說明和定義型說明float Stud:num=0;void Stud:setdata(char *s,int m_id,int m_cpp)name=new charstrlen(s)+1;strcpy(name,s);id=m_id;cpp=m_cpp;sum+
27、=cpp; float Stud:avg()/靜態(tài)函數(shù)的定義型說明,此時不用加static對函數(shù)進(jìn)行原型說明float res;if(num>0) res=sum/num;else cout<<"沒有學(xué)生對象!"return res;void Stud:print()cout<<"學(xué)號: "<<id<<" 姓名: "<<name<<" C+成績: "<<cpp<<endl;void printgrade(Stud
28、&stu)/cout<<"學(xué)號"<<stu.id<<" 姓名"<<<<"C+成績等級: "cout<<"C+成績等級: "if(stu.cpp>=90) cout<<"優(yōu)"<<endl;else if(stu.cpp>=80) cout<<"良"<<endl;else if(stu.cpp>=70) cout<
29、<"中"<<endl; else if(stu.cpp>=70) cout<<"中"<<endl; else if(stu.cpp>=60) cout<<"及格"<<endl; else cout<<"不及格"<<endl;void main()int i,n;char name100;int id,cpp;cout<<"請輸入學(xué)生個數(shù): "cin>>n; Stud *p
30、stu=new Studn;for(i=0;i<n;i+)cout<<"請分別輸入學(xué)號,姓名和C+成績 "cin>>id>>name>>cpp;pstui.setdata(name,id,cpp);for(i=0;i<n;i+) pstui.print();printgrade(pstui);cout<<Stud:num<<"個學(xué)生平均分: "<<Stud:avg()<<endl;/*1.實(shí)現(xiàn)描述超市的的類 Suppermacket 類,記錄系統(tǒng)中
31、現(xiàn)有商品(用指針實(shí)現(xiàn)),定義增加商品的函數(shù) Append ,刪除商品的函數(shù) Delete ,查詢商品的函數(shù) Query,并顯示查詢結(jié)果; 2.定義商品類 Goods ,具有商品名稱Name,商品價(jià)格Price,商品數(shù)量number等屬性,操作 Sale (銷售商品,余額不足時給予提示)、Add(商品上架操作) 和ShowMe(顯示商品信息)。3.編寫main函數(shù),測試以上所要求的各種功能,完成商品的增加、刪除和查詢商品,以及商品銷售和商品上架的操作。 4.可以利用對象成員來實(shí)現(xiàn)。*/#include<iostream.h>#include<string.h>class
32、Suppermacket;class Goodsfloat Price;int number;char Name10;public:Goods()Add();void Sale();void Add();void ShowMe();friend Suppermacket;friend void Sale(Suppermacket &);class SuppermacketGoods * PGoods10;public:Suppermacket()for(int i=0;i<10;i+) PGoodsi=0;void Append();void Delete();void Quer
33、y();friend void Sale(Suppermacket &);void Sale(Suppermacket &Goods);void main()Suppermacket Goods;Goods.Append();Goods.Append();Goods.Append();Goods.Delete();Goods.Query();Sale(Goods);void Goods:Sale()int n;ShowMe();cout<<"請輸入購買的商品數(shù)量:"cin>>n;if(number>n) number-=n;el
34、se cout<<"貨物數(shù)量不足!"void Goods:Add()cout<<"請輸入新上架商品的名稱,單價(jià)和數(shù)量:"cin>>Name>>Price>>number;void Goods:ShowMe()cout<<" 品名:"<<Name<<" 數(shù)量:"<<number<<"單價(jià):"<<Price<<endl;void Suppermacket:A
35、ppend()int n=0;while( PGoodsn!=0 && n<10) n+;if(n<10) PGoodsn=new Goods;void Suppermacket:Delete()char name10;cout<<"請輸入待刪除的商品名稱:"cin>>name;for(int i=0;i<10;i+)if(PGoodsi=0) continue; if(strcmp(PGoodsi->Name,name)=0) break;if(i<10) cout<<"刪除&qu
36、ot;<<name<<"商品n"delete PGoodsi;PGoodsi=0;else cout<<"沒有此類商品!n"void Suppermacket:Query()char name10;cout<<"請輸入待查詢的商品名稱:"cin>>name;for(int i=0;i<10;i+) if(PGoodsi=0)continue;if(strcmp(PGoodsi->Name,name)=0) break;if(i>=10) cout<&l
37、t;"沒有此類商品!n"else PGoodsi->ShowMe(); void Sale(Suppermacket &Goods)char name10;int i=0;cout<<"請輸入待買的商品名稱:"cin>>name;while(i<10) if(Goods.PGoodsi=0) i+;continue;if(strcmp(Goods.PGoodsi->Name,name)=0) break;i+;if(i>=10) cout<<"沒有此類商品!n"els
38、e Goods.PGoodsi->Sale();/*【程序功能】找出給定范圍內(nèi)的和親數(shù)。對于兩個正整數(shù),如果其中的一個整數(shù)是另一個整數(shù)的全部真因子之和,反之亦然,則稱這兩個數(shù)為"和親數(shù)"。例如,220有真因子"1, 2, 4, 5, 10, 11, 20, 22, 44, 55, 110",其和為284,而284有真因子"1, 2, 4, 71, 142",其和為220,因此220和284就是一對和親數(shù)?!揪幊桃蟆?.試建立一個類NNM 私有數(shù)據(jù)成員int n1 , n2 ;/查找數(shù)據(jù)的范圍int a102; /存儲m n(m
39、<n)之間的所有和親數(shù)對,并存儲到a數(shù)組中int num; /統(tǒng)計(jì)和親數(shù)對的個數(shù) 公有成員函數(shù)1)缺省構(gòu)造函數(shù):初始化數(shù)據(jù)成員n1,n2為0。2)帶參構(gòu)造函數(shù)NNM(int m,int n,int a2):用參數(shù)初始化數(shù)據(jù)成員n1,n2。3)void find( )函數(shù)用于查找n1 n2之間的所有和親數(shù)對并存儲到數(shù)組中4)打印函數(shù) void print( ),將結(jié)果輸出到屏幕*/#include<iostream.h>class NNMint n1,n2;int a102;int num;public:NNM()n1=0;n2=0;num=0;NNM(int a, int b
40、)n1=a,n2=b,num=0;void find();void print();void main()NNM a(2,500);a.find();a.print();void NNM:find()int sum1=0,sum2=0;int i,n;for(i=n1;i<=n2;i+)for(sum1=0,n=1;n<i/2+1;n+)if(i%n=0)sum1+=n;for(sum2=0,n=1;n<sum1/2+1;n+)if(sum1%n=0)sum2+=n;if(sum2!=i | sum1=i) continue;anum0=i,anum+1=sum1;void
41、NNM:print()for(int i=0;i<num;i+)cout<<ai0<<','<<ai1<<endl;/*二. 【要求】試建立一個類 Student 用于描述學(xué)生信息,具體要求如下: 私有數(shù)據(jù)成員int id: 學(xué)生學(xué)號。char yuwen: 語文成績(五級分制:A、B、C、D和E,其它無效)。float shuxue: 數(shù)學(xué)成績(百分制)。 公有成員函數(shù)1)缺省構(gòu)造函數(shù):初始化數(shù)據(jù)成員為0或NULL值。2)帶參構(gòu)造函數(shù):用參數(shù)初始化數(shù)據(jù)成員(需判斷參數(shù)是否有效)。3)void Print( ): 輸出本對象
42、的學(xué)號、語文成績(優(yōu),良,中,及格,不及格)和數(shù)學(xué)成績。4)修改函數(shù)void Change( ):從鍵盤輸入新的學(xué)號、語文成績和數(shù)學(xué)成績,修改相應(yīng)數(shù)據(jù)成員的值。接受輸入前屏幕上顯示提示輸入哪些信息。5)比較函數(shù)void Comp(Student &a, Student &b): 比較本學(xué)生、a學(xué)生和b學(xué)生的數(shù)學(xué)成績,找出數(shù)學(xué)成績最高和最低的學(xué)生,輸出他們的信息。 主程序:定義三個以上的對象,并且每個成員函數(shù)至少被調(diào)用一次。*/#include<iostream.h>class Studentint id; /學(xué)生學(xué)號。 char yuwen; /語文成績(五級分制:
43、A、B、C、D和E,其它無效)。 float shuxue; / 數(shù)學(xué)成績(百分制)。public:Student()id=0, yuwen=NULL;shuxue=0;Student(int,char,float);void Print( );void Change( );void Comp(Student &a, Student &b);void main()Student A(78,'E',86),B(84,'D',82),C;C.Change();A.Comp(B,C);Student:Student(int a,char b, floa
44、t c)id=a, yuwen=b;shuxue=c;void Student:Print( ) cout<<" 學(xué)號: "<<id<<",語文成績: "<<yuwen<<",數(shù)學(xué)成績: "<<shuxue<<endl;void Student:Change( )cout<<"請輸入學(xué)生的學(xué)號、語文成績(五級分制:A/B/C/D/E,其它無效)和數(shù)學(xué)成績:n"cin>>id>>yuwen>&
45、gt;shuxue;void Student:Comp(Student &a, Student &b)Student max,min;max= shuxue>a.shuxue?(shuxue>b.shuxue? *this:b):(a.shuxue>b.shuxue?a:b);min= shuxue<a.shuxue?(shuxue<b.shuxue? *this:b):(a.shuxue<b.shuxue?a:b);cout<<"數(shù)學(xué)成績最高和最低的學(xué)生分別是:n"max.Print();min.Print(
46、);/*1.實(shí)現(xiàn)描述超市的的類Suppermacket類,記錄系統(tǒng)中現(xiàn)有商品(用指針實(shí)現(xiàn)),定義增加商品的函數(shù)Append,刪除商品的函數(shù)Delete,查詢商品的函數(shù)Query,顯示查詢結(jié)果; 2.定義商品類Goods,具有商品名稱Name,商品價(jià)格 Price ,商品數(shù)量 number 等屬性,操作Sale(銷售商品,余額不足時給予提示)、Add(商品上架操作)和ShowMe(顯示商品信息)。3.編寫main函數(shù),測試以上所要求的各種功能,完成商品的增加、刪除和查詢商品,以及商品銷售和商品上架的操作。 4.可以利用對象成員來實(shí)現(xiàn)。*/#include<iostream.h>#in
47、clude<string.h>class Suppermacket;class Goodschar name10;int Price;int number;public:Goods()strcpy(name,"");Price=0;number=0;void Sale(int n);void Add();void ShowME()cout<<"商品:"<<name<<",價(jià)格:"<<Price<<",有"<<number<&l
48、t;"件。nn"friend Suppermacket;class SuppermacketGoods *PGoods;int num;public:Suppermacket(int n=10)PGoods=new Goodsn;num=n;void Append();void Delete();void Query();Suppermacket()delete PGoods;void main()Suppermacket A(3);A.Append();A.Append();A.Delete();A.Query();void Suppermacket:Append()fo
49、r(int i=0;i<num;i+)if(PGoodsi.number=0)PGoodsi.Add();PGoodsi.ShowME();return;cout<<"沒有空貨架上貨了!n"void Suppermacket:Delete()char name10;int n;cout<<"請輸入需要銷售商品名稱和數(shù)量: "cin>>name>>n;for(int i=0;i<num;i+)if(strcmp(PG,name)=0)PGoodsi.Sale(n);return
50、;cout<<"查無此商品!n"void Suppermacket:Query()char name10;cout<<"請輸入需要查詢的商品名稱; "cin>>name;for(int i=0;i<num;i+)if(strcmp(PG,name)=0)PGoodsi.ShowME();return;cout<<"查無此商品!n"void Goods:Sale(int n)if(n<number)number-=n;ShowME();elsecout<
51、;<"商品數(shù)量不夠,無法銷售!n"void Goods:Add()cout<<"請輸入上架的商品名稱、價(jià)格及數(shù)量: "cin>>name>>Price>>number;/*1.建立一個類NUM,求指定范圍內(nèi)的所有素?cái)?shù)(質(zhì)數(shù))。具體要求如下:1)私有數(shù)據(jù)成員。int data25;依次存放指定范圍內(nèi)的所有素?cái)?shù)。int spanl , span2 ;存放要求計(jì)算的素?cái)?shù)的范圍。int num ;存放span1與span2之間的素?cái)?shù)個數(shù)。2) 公有成員函數(shù)。構(gòu)造函數(shù)NUM (int a ,int b);初始化
52、所要求的素?cái)?shù)的范圍span1、span2及num (值為0)。void process( ): 求出指定范圍內(nèi)的所有素?cái)?shù),把它們依次存放在數(shù)組data中,并將求出的素?cái)?shù)的個數(shù)賦給num 。void print( ):輸出求出的所有素?cái)?shù)。3)在主程序中對該類進(jìn)行測試。使用測試數(shù)據(jù)span1=100 , span2=200 。即求100200之間的所有素?cái)?shù)。*/#include<iostream.h>#include<math.h>class NUMint data25; /依次存放指定范圍內(nèi)的所有素?cái)?shù)。int span1,span2; /存放要求計(jì)算的素?cái)?shù)的范圍。int
53、num; /存放span1與span2之間的素?cái)?shù)個數(shù)。public:NUM (int a ,int b);void process( );void print( );void main()NUM a(100,200);cess();a.print();NUM:NUM (int a ,int b)span1=a;span2=b;num=0; void NUM:process( )int i,n,f=0;for(i=span1;i<=span2;i+)for(n=2,f=0;n<=sqrt(i);n+)if(i%n=0)f=1;break;if(f=1)continue;da
54、tanum+=i;void NUM:print( )for(int i=0;i<num;)cout<<datai<<'t'if(+i%6=0)cout<<endl;cout<<endl;/*已知由一個數(shù)組派生出另一個數(shù)組的派生規(guī)則如下:假定原始數(shù)組為a10,新數(shù)組為b10,則bi的值為數(shù)組a中大于ai的元素的個數(shù)。例如,對于說明"int a =1,2,3,4,5;int b5;",其中a1=2,數(shù)組a中有3個元素比a1大,則b1=3。試建立一個實(shí)現(xiàn)此功能的類ARRAY。具體要求如下:1)私有數(shù)據(jù)成員。 i
55、nt a10,b10;a存放原始數(shù)組,b存放派生數(shù)組。2)公有成員函數(shù)。 構(gòu)造函數(shù)ARRAY(int data10);初始化成員數(shù)組a 。 void process( );由數(shù)組a根據(jù)上述派生類規(guī)則,用循環(huán)語句計(jì)算數(shù)組b的各元素。 void print( );屏幕顯示數(shù)組a和b。*/#include<iostream.h>class ARRAYint a10,b10;public:ARRAY(int data10);/初始化成員數(shù)組a 。 void process( );/由數(shù)組a根據(jù)上述派生類規(guī)則,用循環(huán)語句計(jì)算數(shù)組b的各元素。 void print( );/屏幕顯示數(shù)組a和b。;void main()int a=7,4,9,23,56,44,18,33,21,17;ARRAY array(a);cess();array.print();ARRAY:ARRAY(int data10)for(int i=0;i<10;i+)ai=datai;bi=0;void ARRAY:process( )for(int i=0;i<10;i+)for(int k=0;k&l
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 2025綠色能源供應(yīng)合同
- 2025設(shè)備租賃合同 標(biāo)準(zhǔn)版模板
- 社團(tuán)工作計(jì)劃總結(jié)
- 資金流動管理的提升方案計(jì)劃
- 節(jié)能環(huán)保專家的新年個人工作計(jì)劃
- 注重反饋與調(diào)整的計(jì)劃
- 數(shù)字信號處理知識測試題庫
- 服裝行業(yè)技能培訓(xùn)試卷
- 2025年邢臺貨運(yùn)考試題庫
- 網(wǎng)絡(luò)安全與防護(hù)措施考試試題集
- 房屋延期交房起訴狀
- 2.2活塞連桿組課件講解
- 飯店定金合同范本
- 2024年廣東省中考生物+地理試卷(含答案)
- CHT 1027-2012 數(shù)字正射影像圖質(zhì)量檢驗(yàn)技術(shù)規(guī)程(正式版)
- 圍擋施工組織設(shè)計(jì)方案
- 第8課第二框課件《化解沖突促進(jìn)和諧》-【中職專用】中職思想政治《心理健康與職業(yè)生涯》(高教版2023·基礎(chǔ)模塊)
- 2024年河南師范大學(xué)附中中招二模英語試卷含答案
- MOOC 以案說法-中南財(cái)經(jīng)政法大學(xué) 中國大學(xué)慕課答案
- 武漢大學(xué)介紹PPT
- 廣西桂林市國龍外國語學(xué)校2022-2023學(xué)年下學(xué)期期中考試八年級數(shù)學(xué)試題+
評論
0/150
提交評論