版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
1、<p> 課程設(shè)計(jì)報(bào)告——統(tǒng)計(jì)數(shù)字</p><p><b> 【問題描述】</b></p><p> 某次科研調(diào)查時(shí)得到了n個(gè)自然數(shù),每個(gè)數(shù)均不超過1500000000(1.5*109)。已知不相同的數(shù)不超過10000個(gè),現(xiàn)在需要統(tǒng)計(jì)這些自然數(shù)各自出現(xiàn)的次數(shù),并按照自然數(shù)從小到大的順序輸出統(tǒng)計(jì)結(jié)果。</p><p><b&
2、gt; 【設(shè)計(jì)需求及分析】</b></p><p> 用一維數(shù)組存儲(chǔ)調(diào)查得到的n個(gè)自然數(shù),原始數(shù)據(jù)保存在文件count.in,第一行輸入自然數(shù)個(gè)數(shù),2--n+1輸入自然數(shù)。結(jié)果保存在count.out中。</p><p> 用冒泡法對(duì)n個(gè)自然數(shù)進(jìn)行排序,分別統(tǒng)計(jì)不同的自然數(shù)個(gè)數(shù)。</p><p><b> 【設(shè)計(jì)功能的實(shí)現(xiàn)】</b
3、></p><p> #include<stdio.h></p><p> #include<stdlib.h></p><p> void main()</p><p> {float a[100],t;</p><p> int i,n,j,sum;</p>&
4、lt;p> freopen("count.in.txt","r",stdin);//原始數(shù)據(jù)保存在count.in中</p><p> freopen("count.out.txt","w",stdout);//輸出結(jié)果保存在count.out中</p><p> scanf("%d&qu
5、ot;,&n);</p><p> for(i=0;i<n;i++)</p><p> scanf("%f",&a[i]);//輸入n個(gè)自然數(shù)</p><p> for(i=0;i<n;i++)</p><p> for(j=i;j<n;j++)</p><p&
6、gt; if(a[i]>a[j])</p><p> {t=a[i];a[i]=a[j];a[j]=t;}//對(duì)n個(gè)自然數(shù)進(jìn)行排序</p><p><b> sum=1;</b></p><p> for(i=0,j=1;j<n;i++,j++)</p><p> if(a[i]!=a[j])<
7、;/p><p><b> break;</b></p><p><b> if(j>=n)</b></p><p> {printf("%f:%d\n",a[0],n);}</p><p><b> else</b></p><
8、p><b> {</b></p><p> for(i=0,j=1;j<n;i++,j++)</p><p> {if(a[i]==a[j])sum++;else {printf("%f:%d\n",a[i],sum);sum=1;}}</p><p><b> sum=1;</b>
9、</p><p> for(i=n-1;i>=1;i--)</p><p> if(a[i]==a[i-1])</p><p><b> sum++;</b></p><p><b> else </b></p><p> {printf("%f:%
10、d\n",a[i],sum);break;}// //統(tǒng)計(jì)不同自然數(shù)的出現(xiàn)次數(shù)</p><p><b> }</b></p><p><b> }</b></p><p> 【實(shí)例測(cè)設(shè)及運(yùn)行結(jié)果】</p><p><b> 【心得體會(huì)】</b></p&g
11、t;<p> 文本的存儲(chǔ)和讀取原本是用指針來完成實(shí)現(xiàn)的,在實(shí)現(xiàn)的過程中遇到了不小的麻煩且用指針實(shí)現(xiàn)過于繁瑣,故改用freopen("count.in.txt","r",stdin);</p><p> freopen("count.out.txt","w",stdout);語句實(shí)現(xiàn),使程序變的簡(jiǎn)單易懂。</p&
12、gt;<p> 課程設(shè)計(jì)報(bào)告——誰拿了最多獎(jiǎng)學(xué)金</p><p><b> 【問題描述】</b></p><p> 某校的慣例是在每學(xué)期的期末考試之后發(fā)放獎(jiǎng)學(xué)金。發(fā)放的獎(jiǎng)學(xué)金共有五種,獲取的條件各自不同:</p><p> 1) 院士獎(jiǎng)學(xué)金,每人8000元,期末平均成績(jī)高于80分(>80),并且在本學(xué)期內(nèi)發(fā)表1篇或1
13、篇以上論文的學(xué)生均可獲得;</p><p> 2) 五四獎(jiǎng)學(xué)金,每人4000元,期末平均成績(jī)高于85分(>85),并且班級(jí)評(píng)議成績(jī)高于80分(>80)的學(xué)生均可獲得;</p><p> 3) 成績(jī)優(yōu)秀獎(jiǎng),每人2000元,期末平均成績(jī)高于90分(>90)的學(xué)生均可獲得;</p><p> 4) 西部獎(jiǎng)學(xué)金,每人1000元,期末平均成績(jī)高于85分
14、(>85)的西部省份學(xué)生均可獲得;</p><p> 5) 班級(jí)貢獻(xiàn)獎(jiǎng),每人850元,班級(jí)評(píng)議成績(jī)高于80分(>80)的學(xué)生干部均可獲得;</p><p> 只要符合條件就可以得獎(jiǎng),每項(xiàng)獎(jiǎng)學(xué)金的獲獎(jiǎng)人數(shù)沒有限制,每名學(xué)生也可以同時(shí)獲得多項(xiàng)獎(jiǎng)學(xué)金。例如姚林的期末平均成績(jī)是87分,班級(jí)評(píng)議成績(jī)82分,同時(shí)他還是一位學(xué)生干部,那么他可以同時(shí)獲得五四獎(jiǎng)學(xué)金和班級(jí)貢獻(xiàn)獎(jiǎng),獎(jiǎng)金總數(shù)是4
15、850元。</p><p><b> 【設(shè)計(jì)需求及分析】</b></p><p> 定義結(jié)構(gòu)體類型,用結(jié)構(gòu)體申明一個(gè)結(jié)構(gòu)體數(shù)組用于存儲(chǔ)學(xué)生信息。</p><p> 在循環(huán)輸入數(shù)據(jù)的同時(shí),分別計(jì)算每個(gè)同學(xué)應(yīng)得獎(jiǎng)學(xué)金數(shù)和總的獎(jiǎng)學(xué)金數(shù)分別存在sum數(shù)組中和add變量中。</p><p> 申明變量max,依次與每個(gè)同學(xué)
16、應(yīng)得獎(jiǎng)學(xué)金比較,存儲(chǔ)獲得獎(jiǎng)學(xué)金最多學(xué)生姓名和獎(jiǎng)學(xué)金數(shù)。</p><p><b> 【設(shè)計(jì)功能的實(shí)現(xiàn)】</b></p><p> #include <stdio.h> void main() { struct Student {
17、; char name[20]; int grade1; int grade2; char ganbu;
18、 char xibu; int title; }a[100];//定義結(jié)構(gòu)體,同時(shí)申明一個(gè)結(jié)構(gòu)體數(shù)組用于存儲(chǔ)學(xué)生信息。 int N; scanf("%d",&N); int i; int&
19、#160;sum[100]={0}; int add=0; for(i=0;i<N;i++) { scanf("%s %d %d %s %s %d",&a[i].name,&a[
20、i].grade1,&a[i].grade2,&a[i].ganbu,&a[i].xibu,&a[i].title); if(a[i].grade1>80 && a[i].title>0) sum[i]+=8000; if(a
21、[i].grade1>8</p><p> 【實(shí)例測(cè)設(shè)及運(yùn)行結(jié)果】</p><p><b> 【心得體會(huì)】</b></p><p> 在實(shí)現(xiàn)過程中原本是通過定義each方法類來實(shí)現(xiàn)對(duì)每個(gè)學(xué)生應(yīng)得獎(jiǎng)學(xué)金的計(jì)算和result方法類對(duì)學(xué)生的獎(jiǎng)學(xué)金進(jìn)行比較得出獲獎(jiǎng)學(xué)金最多的學(xué)生和最高獎(jiǎng)學(xué)金的,但是經(jīng)過比較覺得在主函數(shù)中實(shí)現(xiàn)比較有條理,更加容
22、易理解。如果定義類方法實(shí)現(xiàn),類方法實(shí)現(xiàn)簡(jiǎn)單,但是類方法需要申明、定義、調(diào)用。所以選擇了在主函數(shù)中實(shí)現(xiàn)。</p><p> 課程設(shè)計(jì)報(bào)告——單詞的計(jì)數(shù)</p><p> 專業(yè):__軟件工程___ 班級(jí):_1308班_ 姓名:__朱瑞春_______ 學(xué)號(hào):__ 2013005493 _ 完成日期:_6.26______</p><p><b>
23、 【問題描述】</b></p><p> 假設(shè)有如下的英文文本文檔:(此處為太原理工大學(xué)學(xué)校簡(jiǎn)介英文版)</p><p> TAIYUAN UNIVERSITY OF TECHNOLOGY</p><p> Taiyuan University of Technology (TUT) has its history traced all the
24、way back to the Western Learning School of Shanxi Grand Academy (1902), which was one of the three earliest national universities in China. With the tradition and development of over 100 years, TUT is now a general unive
25、rsity with engineering as the major, sciences and technology integrated and coordinate development of multiple disciplines. It is a university that is included in the “Project 211” --- the national higher educ</p>
26、<p><b> ……</b></p><p> Recollecting the centennial history, generations of TUT have created its mission and glory of a century with responsibility and confidence; expecting the promising
27、 tomorrow, over 30,000 TUT students and faculty are producing splendor and perspectives by their wisdom and diligence. In the new era, Taiyuan University of Technology, following the Conception of Scientific Development
28、, is determined to further the reformation on education, to reinforce the teaching management so as to upgrade its te</p><p> 設(shè)計(jì)C或C++程序,統(tǒng)計(jì)在這樣的英文文本文件中,出現(xiàn)了多少個(gè)單詞,每個(gè)單詞出現(xiàn)了幾次。連續(xù)的英文字符都認(rèn)為單詞(不包括數(shù)字),單詞之間用空格或標(biāo)點(diǎn)符號(hào)分隔。&l
29、t;/p><p><b> 【設(shè)計(jì)需求及分析】</b></p><p> 定義結(jié)構(gòu)體用于存儲(chǔ)一個(gè)單詞,freopen語句生成文本文檔并用來保存結(jié)果。</p><p> 通過FILE指針判斷文本打開是否成功,成功則輸入單詞。</p><p><b> 【設(shè)計(jì)功能的實(shí)現(xiàn)】</b></p>
30、<p> #include<stdio.h> #include<string.h>#include<ctype.h> #include <stdlib.h> #define N 1000struct a { char ch[20]; int
31、;m;int flag;}; void main() { freopen("count.out.txt","w",stdout);//把生成的結(jié)果保存在生成的count.out文檔中。 struct a word[N]={NULL};char tem[20];int k=0,j=0,i=0,c
32、ount=1; FILE *fp; char c[20]; if((fp=fopen("tyut.txt","r"))!=NULL) { while(!(feof(fp))) { fscanf(fp,"%s",word[k].ch);
33、160; k++; }//如果tyut的文本打開成功,則向文本中輸入單詞。for(i=0;i<k;i++) { if(word[i].flag!=1){ word[i]</p><p><b> }</b></p><p> } }
34、 printf("文本共有單詞數(shù):%d\n",k); system("pause"); printf("文本統(tǒng)計(jì)結(jié)果如下: \n");for(i=0;(word[i].ch!=NULL)&&(i<N);i
35、++){if(word[i].m!=0){printf("%3d. %s,出現(xiàn)了次數(shù):%d次.\n",count,word[i].ch,word[i].m);count++;}} for(i=0;i<k;i++)//字典序排序 for(j=i+1;j<k;j++)
36、 if(strcmp(word[i].ch,word[j].ch)>0) { strcpy(tem
37、,word[i].ch); strcpy(word[i].ch,word[j].ch); strcpy(word[j].ch,tem); &
38、#160; } printf("這%d個(gè)單詞按照字典排序輸出為:\n",k); for</p><p> 【實(shí)例測(cè)設(shè)及運(yùn)行結(jié)果】</p><p>
39、;<b> 【心得體會(huì)】</b></p><p> 字典序排序?qū)嶋H上就是比較字符串的ASCII碼值。如果比較結(jié)果大于0,則交換順序。</p><p> 課程設(shè)計(jì)報(bào)告——最小生成樹</p><p> 專業(yè):__軟件工程___ 班級(jí):_1308班_ 姓名:__朱瑞春_____ 學(xué)號(hào):__ 2013005493 _ 完成日期:___
40、6.27____</p><p><b> 【問題描述】</b></p><p> 給定一個(gè)地區(qū)的n個(gè)城市間的距離網(wǎng),用Prim算法或Kruskal算法建立最小生成樹,并計(jì)算得到的最小生成樹的代價(jià)。</p><p><b> 【設(shè)計(jì)需求及分析】</b></p><p> 1、城市間的距離網(wǎng)采
41、用鄰接矩陣表示,鄰接矩陣的存儲(chǔ)結(jié)構(gòu)定義采用課本中給出的定義,</p><p> 若兩個(gè)城市之間不存在道路,則將相應(yīng)邊的權(quán)值設(shè)為自己定義的無窮大值。</p><p> 2、要求在屏幕上顯示得到的最小生成樹中包括了哪些城市間的道路,并顯示得到的最小生成樹的代價(jià)。</p><p> 3、表示城市間距離網(wǎng)的鄰接矩陣(要求至少6個(gè)城市,10條邊)。</p>
42、<p><b> 【設(shè)計(jì)功能的實(shí)現(xiàn)】</b></p><p> #include<stdio.h></p><p> #include<stdlib.h></p><p> #define TURE 999</p><p> typedef struct ArcNode<
43、;/p><p> { char vexs[10];</p><p> int edgs[10][10];</p><p><b> int n,e;</b></p><p><b> }mgraph;</b></p><p> struct edg{</p>
44、;<p><b> int v1;</b></p><p><b> int v2;</b></p><p><b> int cost;</b></p><p> } a[10],b[10];//定義結(jié)構(gòu)體</p><p> void greatemg
45、raph(mgraph *G)</p><p> { int i,j,k,weight,m,n;</p><p> int ch1,ch2;</p><p><b> char a,b;</b></p><p> printf("請(qǐng)輸入頂點(diǎn)數(shù)和邊數(shù):");</p>
46、<p> scanf("%d %d",&(G->n),&(G->e));</p><p> for(i=0;i<G->n;i++)</p><p> { getchar();</p><p> printf("請(qǐng)輸入第%d個(gè)頂點(diǎn):",i+1);</p&g
47、t;<p> scanf("%c",&(G->vexs[i]));</p><p><b> }</b></p><p> for(i=0;i<G->n;i++)</p><p> for(j=0;j<G->n;j++)</p><p>
48、G->edgs[i][j]=0;</p><p> for(k=0;k<G->e;k++)</p><p> { printf("請(qǐng)輸入第%d條邊的頂點(diǎn)權(quán)值:",k+1);</p><p> getchar();</p><p> scanf("%c %c %d",&a
49、mp;a,&b,&weight);</p><p><b> m=0,n=0;</b></p><p> for(m=0;G->vexs[m]!=a;m++);</p><p> for(n=0;G->vexs[n]!=b;n++);</p><p> ch1=m;ch2=n;<
50、/p><p> G->edgs[ch1][ch2]=weight;G->edgs[ch2][ch1]=weight;</p><p><b> }</b></p><p><b> }</b></p><p> void prime(mgraph *G,int v)</p>
51、;<p> { int i,j,k,min;</p><p><b> struct</b></p><p> { int adjvex;</p><p> int lowcost;</p><p> }closedge[10];</p><p> for(
52、i=0;i<G->n;i++)</p><p> { closedge[i].lowcost=G->edgs[v][i];</p><p> closedge[i].adjvex=v;</p><p><b> }</b></p><p> closedge[v].lowcost=TURE
53、;</p><p> for(i=1;i<G->n;i++)</p><p> { min=100;</p><p> for(j=0;j<G->n;j++)</p><p> if(closedge[j].lowcost!=TURE && closedge[j].lowcost!=0
54、)</p><p><b> { </b></p><p> if(closedge[j].lowcost<min)</p><p><b> {</b></p><p> min =closedge[j].lowcost;</p><p><b>
55、; k=j;</b></p><p><b> }</b></p><p><b> }</b></p><p> printf("%C %c %d\n",G->vexs[closedge[k].adjvex],G->vexs[k], min);</p>
56、;<p> closedge[k].lowcost=TURE;</p><p> for(j=0;j<G->n;j++)</p><p> if(closedge[j].lowcost!=TURE)</p><p> if(G->edgs[k][j]<closedge[j].lowcost||closedge[j].lo
57、wcost==0)</p><p> { closedge[j].lowcost=G->edgs[k][j];</p><p> closedge[j].adjvex=k;</p><p><b> }</b></p><p><b> }</b></p><
58、p><b> }</b></p><p> void main()</p><p><b> {</b></p><p> mgraph *G,a;char ch1;</p><p><b> G=&a;</b></p><p>
59、 printf("建立圖的領(lǐng)結(jié)舉證\n");</p><p> greatemgraph(G);</p><p> getchar();</p><p><b> ch1=1;</b></p><p> printf("\n");</p><p>
60、 printf("最小生成樹 ");</p><p> printf("prime輸出為:\n");</p><p> prime(G,0);</p><p> system("pause");</p><p><b> }</b></p>
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 眾賞文庫僅提供信息存儲(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ì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 統(tǒng)計(jì)數(shù)字對(duì)比表
- 《統(tǒng)計(jì)數(shù)字會(huì)撒謊》漢譯實(shí)踐報(bào)告.pdf
- 統(tǒng)計(jì)數(shù)字差錯(cuò)的訂正
- dsp課程設(shè)計(jì)數(shù)字時(shí)鐘
- 課程設(shè)計(jì)數(shù)字鐘
- 協(xié)調(diào)推進(jìn)“四個(gè)全面”必須懲治統(tǒng)計(jì)數(shù)字腐敗
- 單片機(jī)課程設(shè)計(jì)數(shù)字鐘報(bào)告
- 在統(tǒng)計(jì)數(shù)字化改革推進(jìn)會(huì)上的講話供借鑒
- 江蘇大學(xué)數(shù)字邏輯課程設(shè)計(jì)數(shù)字時(shí)鐘
- 數(shù)字電路eda課程設(shè)計(jì)數(shù)字跑表
- 彩燈控制器的設(shè)計(jì)數(shù)字電子課程設(shè)計(jì)報(bào)告
- 單片機(jī)課程設(shè)計(jì)數(shù)字時(shí)鐘
- 課程設(shè)計(jì)數(shù)字電子鐘的設(shè)計(jì)
- 單片機(jī)課程設(shè)計(jì)數(shù)字時(shí)鐘
- eda課程設(shè)計(jì)數(shù)字密碼鎖
- 數(shù)字電路課程設(shè)計(jì)數(shù)字定時(shí)開關(guān)
- 51單片機(jī)課程設(shè)計(jì)數(shù)字溫度計(jì)報(bào)告
- 單片機(jī)課程設(shè)計(jì)數(shù)字鐘
- 光電計(jì)數(shù)器課程設(shè)計(jì)報(bào)告
- 課程設(shè)計(jì)--8位計(jì)數(shù)器eda課程設(shè)計(jì)報(bào)告
評(píng)論
0/150
提交評(píng)論