c++程序設(shè)計(jì)__第1頁
c++程序設(shè)計(jì)__第2頁
c++程序設(shè)計(jì)__第3頁
c++程序設(shè)計(jì)__第4頁
c++程序設(shè)計(jì)__第5頁
已閱讀5頁,還剩13頁未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報(bào)或認(rèn)領(lǐng)

文檔簡介

1、模擬考試題目1. 定義長方體類cuboid,應(yīng)有兩個(gè)構(gòu)造函數(shù)(即cuboid ()和cuboid (int, int, int)、計(jì)算體積函數(shù)、計(jì)算長方體總面積函數(shù)、運(yùn)算符+重載函數(shù)(注意: 對應(yīng)長寬高相加,仍然形成長方體),運(yùn)算符=重載函數(shù)。程序代碼:#include <iostream> usingn ames pace std; class Cuboid private :int a;int b;int c;public :Cuboid()Cuboid( int aa, int bb, int cc)a = aa;b = bb;c = cc;int volume。Jint s

2、 = a*b*c;return s;Iintarea()int s = 2 * (a*b + b*c + a*c); return s;void PrintQcout << "長方體長:"<< a <<" 寬:"<< b <<" 高"<< c << endl;Cuboid op erator+(jCuboids)Cuboid temp;temp .a = a +s.a;temp .b = b +s.b;temp .c = c +s.c;return t

3、emp;bool operator=( Cuboids)retur ntrueelseretur nfalseLint main() 'Cuboid c1(2, 2, 3), c2(2, 2, 3), c3(2, 3, 4);n"cout << "長方體一:c1. prin t();cout << "長方體二:n"c2. prin t();n"cout << "長方體三:c3. prin t();cout << "長方體一 +長方體三為:n"(c1 + c3)

4、. prin t();cout << "長方體一的體積為:"<< c1.volume() << en dl;cout << "長方體一的總面積為:"<< c1.area() << en dl;if (c1 = c2)cout << "長方體一和長方體二一樣n"elsecout << "長方體一和長方體二不一樣 n"if (c1 = c3)cout << "長方體一和長方體三一樣n"else

5、cout << "長方體一和長方體三不一樣n"return 0;輸出結(jié)果:a C:WINDOWSsyste._口長方體一:長方體長:厶JAL: /高3長方體二;長方體長;O寬=2髙3長:芳體二:長方體長:n寬:3咼4長方體一+長方體三為!長方體長;4見:0高7Xs_data中以N x N二維數(shù)組排列的t data 中。長方體一的體積為:12 長方體一的總面積為,32 辰務(wù)j* 一和長方體二一樣 長方體一和長方體三不一樣 請按任意鎮(zhèn)繼續(xù). 2. 編寫一個(gè)程序,可以讀入一個(gè)數(shù)據(jù)文件數(shù)據(jù)(N不小于3 ),將二維數(shù)組置逆,然后寫入另一個(gè)文件 假設(shè)s_data文件中數(shù)據(jù)如

6、下: 45 87 32 34 54 56 76 78 46 78 87 23 12 32 44 56 則t_data 文件中的數(shù)據(jù)如下: 45 54 46 12 87 56 78 32 32 76 87 44 34 78 23 56 程序代碼:#in cludeviostream>#in cludevfstream>using n ames pace std;int main()char *p=new char;int a44;coutvv"請輸入文件名:";cin>>p;ifstream fin(p);ofstream fout("t_d

7、ata");if(!fi n) cout<<"ca n't open "<< pvv"file!"vve ndl; if(!fout) cout<<"ca n't open t_data file!"<<e ndl; for(i nt i=0;i<4;i+)for(i nt j=0;jv4;j+) fin >>aij;for(i=0;i<4;i+)for(i nt j=0;j<4;j+) fout<<aji<<

8、;'' foutvve ndl;fin .close();fout.close(); return 0;輸出結(jié)果:B C:WINDOW-. - D 清輸入文件名: s_data. txt 請按任意鋰?yán)^續(xù) 搜狗拼音輸入法全:<V模擬測試題目二3. 從文件 mytest.txt(自己編寫生成這個(gè)文本文件)讀出全部內(nèi)容,統(tǒng)計(jì)其中的單詞(以空格或n為單詞分隔符 )個(gè)數(shù),并打印單詞個(gè)數(shù)及總文 件長度。程序代碼:#in cludeviostream>#in clude<cstri ng>#in clude<fstream>using n amespace

9、 std;int main()ifstream in ("mytest.txt");if (!i n)cout << " 文件打開失?。?" << endl;return 1;char word;int gs = 0, le ngth = 0;in .get(word);while (in)len gth = len gth + 1;if (word = ' 'll word = 'n')gs = gs + 1;in .get(word);cout << "該文件總共有&quo

10、t;<< gs << " 個(gè)單詞"<<endl; cout << "文件總長度(包括空格、換行)為"<< length << endl;in .close();return 0;輸出結(jié)果:a C:WIND32cnid.» 該文件總共有6個(gè)單詞 艾件總長度(包括空格,換彳亍)為35 請按任意鋰?yán)^續(xù)-.搜狗拼音輸入法全:<為mytesttxt - E事本文祥舊編甫© 搭式直看凹希助凹asdff jkjkl yhbhkjkt yuhkj uiklkll4. 定義一

11、個(gè)空心圓形球體類,要求該類包含構(gòu)造函數(shù)、能計(jì)算球體容積函數(shù)、總 體積函數(shù)、外面積函數(shù)和內(nèi)面積函數(shù),運(yùn)算符=重載函數(shù)。編寫主函數(shù)加以測試。 程序代碼:#in cludeviostream>using n ames pace std;#defi ne pai 3.1415926class sp herep rivate:float r1,r2;public:sp here()r1=1;r2=2;void set(float r11,float r22)r1=r11;r2=r22;float getr1()return r1;float getr2()return r2;float cap a

12、city()return 4*p ai*r1*r1*r1/3;float volume()return 4*p ai*(r2*r2*r2-r1*r1*r1)/3;float surface()return 4*p ai*r2*r2;float in tirior()return 4*p ai*r1*r1;bool sp here:o perator=(s phere s)if(s.r1=r1 &&s.r2= return 1;else return 0;int main()sp here s1,s2;float r1,r2,r3,r4;coutvv"顯示默認(rèn)值:&qu

13、ot;<<endl;H.coutvv"內(nèi)徑為:"vvs1.getr1()vv"; 外徑為:"vvs1.getr2()vvendl; coutvv"請輸入第一個(gè)空心球的內(nèi)徑和外徑:cin> >r1>>r2;s1.set(r1,r2);總體積為:coutvv"內(nèi)徑為:"vvs1.getr1()vv"; 外徑為:"vvs1.getr2()vvendl; coutvv"球體 容積為:"vvsi.capacity()vv" "vvs1.vo

14、lume()vve ndl;內(nèi)面積為:coutvv" 外面 積為:"vvs1.surface()vv""vvsi.i ntirior()vve ndl;coutvv"請輸入第二個(gè)空心球的內(nèi)徑和外徑:"cin> >r3>>r4;s2.set(r3,r4);coutvv"顯示運(yùn)算符=的重載結(jié)果:" if(s1=s2) coutvv"兩個(gè)空心球相同"vvendl; else coutvv"兩個(gè)空心球不相同"vvendl;return 0;輸出結(jié)果:9C :W

15、IN DOWSsystem32cmdLeKe一總體積為:410.5()1內(nèi)面積為:113 097顯示戢認(rèn)值: 內(nèi)徑為:1外徑為:2 請輸入第一個(gè)空心球的內(nèi)徑和外徑:3 5 內(nèi)徑為:3; 外徑為:5 球體容積為:113, 097; 外面積為;314. 159?請輸入第二個(gè)空心球的內(nèi)徑和外徑:4 6 顯示運(yùn)算符二二的重載結(jié)果?兩個(gè)空心球不相同 請按任意鍵繼續(xù)”.搜狗拼音輸入法全:<9C :W1 N DO'WSs ys t em32cnnd.exe-顯示默認(rèn)值;內(nèi)徑為:1外徑為:2請輸入第一個(gè)空心球的內(nèi)徑和外徑;3 5 內(nèi)徑為:3; 外徑為;5 球體容積為:H3.097; 外面積為;3

16、12 159;總體積為;410.501 內(nèi)面積為:113.097 磧輸入第二個(gè)空心球的內(nèi)徑和外徑:3 5 顯示運(yùn)算符二二的重載結(jié)果:兩個(gè)空心球相同 請按任意鋌繼續(xù). 搜狗拼音輸入法全:<模擬測試題目三:5. 編寫程序,可以讀入一個(gè)數(shù)據(jù)文件 s_data中以Nxn二維數(shù)組排列的數(shù)據(jù)(N 不小于5),統(tǒng)計(jì)二維數(shù)組中的每一行偶數(shù)元素的個(gè)數(shù),并將每行偶數(shù)個(gè)數(shù)寫到 該行尾部,產(chǎn)生另一個(gè)文件t_data。(提示:先將N宏定義為某個(gè)正整數(shù),即 #define N 5 )假設(shè)s_data文件中數(shù)據(jù)如下:45 87 32 34 19754 56 76 78 26446 78 87 23 23412 32

17、44 56 13477 11 33 55 999則t_data文件中的數(shù)據(jù)如下:45 87 32 34 197 254 56 76 78 264 546 78 87 23 234 312 32 44 56 134 577 11 33 55 999 0 #in cludeviostream> #in clude<fstream> using n ames pace std;#defi ne N 5 int main()char *p=new char;int aNN,bN;cout<<" 請輸入文件名 :"cin>>p;ifstrea

18、m fin(p);ofstream fout("t_data");if(!fin) cout<<"can't open "<<p<<"file!"<<endl;if(!fout) cout<<"can't open t_data file!"<<endl;for(int i=0;i<N;i+)bi=0;for(int j=0;j<N;j+)fin>>aij;if(aij%2=0) bi+;for(i=0;

19、i<N;i+)for(int j=0;j<N;j+)fout<<aij<<' 'foutvvbivve ndl;fin .close();fout.closeO;return 0;輸出結(jié)果:a CAWIN DOW. - D 請輸入文件名: s_data. txt請按任意鋰?yán)^續(xù)-搜狗拼音輸入法全;458732341975456托78264467337232341232445613477113355999為 &_data.txe著(V)肴助迫<文件E騙笹遲tS式回|45 197 78 8787 54 264 2332 56 46 2

20、3434 76 73 126. 定義一個(gè)一維整數(shù)向量類(即整數(shù)數(shù)組類),要求有構(gòu)造函數(shù)、運(yùn)算符 +重 載函數(shù)、輸出向量中的所有元素值函數(shù)。 再派生出一個(gè)一維浮點(diǎn)向量類(即增加 了一個(gè)浮點(diǎn)數(shù)組),要求有構(gòu)造函數(shù)、運(yùn)算符 +重載函數(shù)、輸出整數(shù)數(shù)組和浮 點(diǎn)數(shù)組中的所有元素值函數(shù),并編寫主函數(shù)加以測試。程序代碼:#i nclude <iostream> using n ames pace std;class IntArrayprivate:int *arr;int n;public:IntArray()IntArray(int a,int n)this->n=n;arr=new in

21、tn; for(int i=0;i<n;i+) arri=ai;int get_n()return n;int* get_arr()return arr;IntArray operator+(IntArray a)if(n!=a.n)cout<<" 不能相加! n" exit(0);elseint *b=new intn; for(int i=0;i<n;i+) bi=arri+a.arri;IntArray temp(b,n); return temp;void print()for(int i=0;i<n;i+)cout<<ar

22、ri;if(i!=n-1)cout<<'t' elsecout<<'n'class FloatArray:public IntArrayprivate:float *arrf;int nf;public:FloatArray()FloatArray(int a,int n,float af,int nf):IntArray(a,n)this->nf=nf;arrf=new floatnf;for(int i=0;i<nf;i+)arrfi=afi;FloatArray operator+(FloatArray a)if(nf!

23、=a.nf)|(get_n()!=a.get_n()cout<<" 不能相加! n" exit(0);elseint *b=new intget_n();for(int i=0;i<get_n();i+)bi=get_arr()i+a.get_arr()i;float *bf=new floatnf;for(int i=0;i<nf;i+)bfi=arrfi+a.arrfi;FloatArray temp(b,get_n(),bf,nf); return temp;void print()cout<<" 整數(shù)數(shù)組中所有元素值為:

24、 IntArray:print();cout<<" 浮點(diǎn)數(shù)組中所有元素值為: for(int i=0;i<nf;i+)n"n"cout<<arrfi;if(i!=nf-1) cout<<'t'else cout<<'n' ; int main() int arr07=1,2,3,4,5,6,7; int arr17=9,8,7,6,5,4,3; IntArray inta0(arr0,7); IntArray inta1(arr1,7); IntArray intans; intans=inta0+inta1;

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(wǎng)僅提供信息存儲(chǔ)空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論