




版權(quán)說(shuō)明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
1、編號(hào):24河北工業(yè)大學(xué)計(jì)算機(jī)軟件技術(shù)基礎(chǔ)(VC)課程設(shè)計(jì)報(bào)告學(xué)院 機(jī)械學(xué)院 班級(jí) 姓名_學(xué)號(hào)_成績(jī) _ _一、題目:按百家姓將姓名排序(24)二、設(shè)計(jì)思路1、總體設(shè)計(jì)1)分析程序的功能:本程序是為了實(shí)現(xiàn)按百家姓對(duì)姓名排序2)系統(tǒng)總體結(jié)構(gòu):主要思路是: xingsort.cpp(按姓“趙、錢(qián)、孫、李”對(duì)姓名進(jìn)行排序)namesort,cpp(按名對(duì)姓名排序)main.cpp(主函數(shù),輸入、輸出姓名,并對(duì)其他函數(shù)進(jìn)行調(diào)用a.h(頭文件,包括調(diào)用函數(shù)的聲明) 。2、各功能模塊的設(shè)計(jì):主要由三功能模塊組成。具體是:(1)a.h:在其中聲明函數(shù)(2)main.cpp: 通過(guò)循環(huán)控制變量,對(duì)學(xué)生成績(jī)進(jìn)行輸
2、入和輸出,以及選擇結(jié)構(gòu)的使用,實(shí)現(xiàn)不同函數(shù)功能的調(diào)用。(3)xing.cpp:按姓進(jìn)行排序。(4)namesort.cpp:按名字進(jìn)行排序。3、設(shè)計(jì)中的主要困難及解決方案1)困難1:從字符串中取出第一個(gè)字按姓排序。解決方案:漢字在數(shù)組中存儲(chǔ)占兩個(gè)字節(jié),把字符串的前兩個(gè)元素賦給一個(gè)數(shù)組,并把這個(gè)數(shù)組的最后一個(gè)元素賦為0,即可得到姓,然后即可按順序排列。2)困難2:對(duì)多文件的使用,即主函數(shù)和各個(gè)函數(shù)分別存放在不同的.cpp文件中。解決方案:在頭文件中進(jìn)行聲明,不能進(jìn)行賦值運(yùn)算,直接在主函數(shù)中進(jìn)行賦值。4、你所設(shè)計(jì)的程序最終完成的功能1)對(duì)輸入的姓名按百家姓進(jìn)行排序。2)準(zhǔn)備的測(cè)試數(shù)據(jù)如下:李麗 趙
3、括 孫福 趙冬梅趙國(guó)良趙雪趙迎專趙倩趙璐佳錢(qián)潮錢(qián)朋釗錢(qián)現(xiàn)沖錢(qián)心孫君嘯孫巍孫亞星李彧李福德李景洋李彥航運(yùn)行結(jié)果:三、程序清單(1)a.h文件清單: int getxing(char a);void xingsort(char name2010,char name_sort2010,int n,int &k1,int &k2,int &k3,int &k4);void namesort(char a2010,int m,int n);(2)main.cpp文件清單: # include<iostream.h> # include<string.h&
4、gt;# include<iomanip.h> # include"a.h"void main()const N=20;char xmN10;cout<<"請(qǐng)輸入20個(gè)姓名: "<<'n'for(int h=0;h<N;h+)cin.getline(xmh,10); /輸入姓名 char xm_sort2010;int i,k1,k2,k3,k4; xingsort(xm,xm_sort,20,k1,k2,k3,k4); /按姓名排序 if(k1>1)namesort(xm_sort,0,k
5、1);if(k2>1) namesort(xm_sort,k1,k1+k2); if(k3>1) namesort(xm_sort,k1+k2,k1+k2+k3); if(k4>1) namesort(xm_sort,k1+k2+k3,k1+k2+k3+k4); /按名對(duì)姓名排序 cout<<"排序后的結(jié)果:"<<'n'for(i=0;i<20;i+)cout<<xm_sorti<<'n' /輸出排好后的姓名(3)xing.cpp文件清單: # include<io
6、stream.h># include<string.h># include<iomanip.h>#include"a.h"void xingsort(char xm2010,char xm_sort2010,int n,int &k1,int &k2,int &k3,int &k4)int i,j,k;k1=0;k2=0;k3=0;k4=0;char xmsort12010,xmsort22010,xmsort32010,xmsort42010;char d3;for(i=0;i<20;i+)for(j=0
7、;j<2;j+)dj=xmij;dj='0' /把姓取出來(lái)if(strcmp(d,"趙")=0) k=1;else if(strcmp(d,"錢(qián)")=0) k=2;else if(strcmp(d,"孫")=0) k=3; else if(strcmp(d,"李")=0) k=4; /使相應(yīng)的姓對(duì)應(yīng)相應(yīng)的數(shù)字if(k=1)for(j=0;j<10;j+)xmsort1k1j=xmij;k1+; else if(k=2)for(j=0;j<10;j+)xmsort2k2j=xmij;
8、k2+; else if(k=3)for(j=0;j<10;j+)xmsort3k3j=xmij;k3+; else if(k=4)for(j=0;j<10;j+)xmsort4k4j=xmij;k4+; /把相應(yīng)的姓放進(jìn)對(duì)應(yīng)的數(shù)組,并對(duì)姓計(jì)數(shù) if(k1!=0)for(i=0;i<k1;i+)for(j=0;j<10;j+)xm_sortij=xmsort1ij;if(k2!=0) for(i=k1;i<k1+k2;i+)for(j=0;j<10;j+)xm_sortij=xmsort2i-k1j;if(k3!=0) for(i=k1+k2;i<k1
9、+k2+k3;i+)for(j=0;j<10;j+)xm_sortij=xmsort3i-k1-k2j;if(k4!=0) for(i=k1+k2+k3;i<k1+k2+k3+k4;i+)for(j=0;j<10;j+)xm_sortij=xmsort4i-k1-k2-k3j; /把各姓從數(shù)組里取出并按順序放進(jìn)新數(shù)組(4)namesort.cpp文件清單: # include<iostream.h># include<string.h># include<iomanip.h>#include"a.h"void namesort(char a2010,int m,int n)char d10;int i,j;for(i=m;i<n-1;i+)for(j=i+1;j<n;j+) if(strcmp(ai,aj)>0) strcpy(d,ai); strcpy(ai,aj); strcpy(aj,d); /對(duì)同姓的姓名進(jìn)行排序四、對(duì)該設(shè)計(jì)題目有何更完善的方案該程序功能比較齊全,在函
溫馨提示
- 1. 本站所有資源如無(wú)特殊說(shuō)明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁(yè)內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒(méi)有圖紙預(yù)覽就沒(méi)有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫(kù)網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 光纜維修合同
- 個(gè)人車輛維修服務(wù)合同
- 博客管理分包合同
- 2025年商鋪?zhàn)赓U合同的條款設(shè)置
- 2025年講義材料著作權(quán)轉(zhuǎn)讓合同
- 道路竣工測(cè)量合同范本
- 會(huì)議活動(dòng)服務(wù)合同范本
- 樓宇亮化照明工程安裝合同范本
- 店鋪門(mén)面出租合同范本
- 九年級(jí)語(yǔ)文上冊(cè)第二單元整體教學(xué)設(shè)計(jì)
- 2024年度教育軟件采購(gòu)合同
- 中華護(hù)理學(xué)會(huì)團(tuán)體標(biāo)準(zhǔn)測(cè)試題庫(kù)含答案
- 防暴隊(duì)形演練和講解
- 2024年醫(yī)療器械經(jīng)營(yíng)質(zhì)量管理規(guī)范培訓(xùn)課件
- 廣電和通信設(shè)備電子裝接工(高級(jí)工)理論考試復(fù)習(xí)題庫(kù)(含答案)
- 2024年河南住戶調(diào)查業(yè)務(wù)題庫(kù)
- 中小企業(yè)(民營(yíng)企業(yè))ESG星級(jí)評(píng)價(jià)
- 電氣工程及其自動(dòng)化職業(yè)規(guī)劃課件
- 天車安全操作培訓(xùn)教材
- 《籃球運(yùn)球》教案(共四篇)
- 國(guó)企關(guān)于違反“三重一大”決策制度責(zé)任追究辦法
評(píng)論
0/150
提交評(píng)論