版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
1、<p><b> 模擬排隊(duì)買票</b></p><p><b> 一 目的</b></p><p> 使用戶能夠通過本程序?qū)崿F(xiàn)所需功能,用戶可以通過本程序進(jìn)行模擬排隊(duì),包括入隊(duì)和出隊(duì)操作,信息包含在input.txt文件中,用戶進(jìn)行的操作結(jié)果將保存在output.txt文件中。</p><p><b
2、> 二 需求分析</b></p><p> 1、如何存放和查找所有的人員信息</p><p> 用二維數(shù)組來(lái)存放和查找數(shù)據(jù),每個(gè)數(shù)組元素就存放一個(gè)人的信息結(jié)構(gòu)體Member,包括名字name,所在朋友組group,以及編號(hào)idnum,每行的第一個(gè)元素不存放人員信息而存放該朋友組的人數(shù)便于以后的遍歷。</p><p> 2、如何操作EnQu
3、eue和DeQueue命令</p><p> 關(guān)于操作EnQueue和DeQueue命令,這可以用隊(duì)列來(lái)模擬,由于有插隊(duì)現(xiàn)象的存在,不能單純地用一個(gè)數(shù)組來(lái)表示隊(duì)列,因?yàn)檫@樣的話,插入一個(gè)朋友,則他后面的人都要往后移一個(gè)單位,刪除一個(gè)人,則他后面的人都要前移一個(gè),這樣無(wú)論插入還是刪除都要移動(dòng)大量的元素,所以,采用鏈表的形式,構(gòu)造鏈隊(duì)列,頭結(jié)點(diǎn)的指針指向隊(duì)頭元素,尾指針指向隊(duì)尾元素。</p><
4、p> 輸入Enqueue命令,如果隊(duì)伍里有朋友,則排在朋友后面;如果沒有遇到朋友,則排在隊(duì)尾。入隊(duì)時(shí),直接向鏈隊(duì)列中插入一個(gè)新節(jié)點(diǎn)即可。</p><p> 輸入Dequeue命令,則根據(jù)“先進(jìn)先出”,按照各個(gè)元素和它后繼元素的先后順序,每次刪除隊(duì)列中的第一個(gè)。程序結(jié)構(gòu)如下所示。</p><p> for(讀測(cè)試文件)</p><p><b>
5、 {</b></p><p><b> Switch{</b></p><p> case 輸入Enqueue:</p><p><b> {讀入名字;</b></p><p><b> 插入鏈隊(duì)列;</b></p><p><
6、b> } </b></p><p> case 輸入 Dequeue:</p><p> {刪除隊(duì)列的第一個(gè)名字;</p><p> 將該名字輸出到文件;}</p><p> case 結(jié)束:break;</p><p><b> }</b></p>
7、<p><b> }</b></p><p><b> 窗口結(jié)構(gòu)關(guān)系圖:</b></p><p> Queue: …. null</p><p> QueuePtr front
8、 QueuePtr rear</p><p><b> 三 概要設(shè)計(jì)</b></p><p> 1、本程序包含兩個(gè)模塊</p><p> ?。?)主程序模塊 </p><p><b> main()</b></p><p><b> {<
9、/b></p><p><b> 定義及初始化;</b></p><p> 顯示開始菜單界面,讓用戶選擇操作;</p><p><b> 進(jìn)行操作;</b></p><p><b> 關(guān)閉文件,結(jié)束;</b></p><p><b&g
10、t; }</b></p><p><b> ?。?)函數(shù)定義模塊</b></p><p> 定義初始化,入隊(duì),出隊(duì)操作等6個(gè)功能函數(shù)</p><p> void ReadInput(FILE *fin);</p><p> 將input文件中的內(nèi)容讀入到二維數(shù)peo當(dāng)中,并附上編號(hào)。</p>
11、;<p> Status InitQueue(Queue Que[4]);</p><p> 將input文件讀入到peo數(shù)組里面去,并進(jìn)行窗口初始化,隨機(jī)選一部分人進(jìn)行入隊(duì),每一個(gè)都將按照最佳位置排入隊(duì)伍。</p><p> Status InitEn(Queue Que[4],Member a);</p><p> 將選出來(lái)的人進(jìn)行按最佳位
12、置入隊(duì)。</p><p> Status EnQueue(Queue Que[4],FILE *fout);</p><p> 由用戶輸入人名,再進(jìn)行最佳入隊(duì)操作;</p><p> Status DeQueue(Queue Que[4],int &num,FILE *fout);</p><p> 由用戶選擇窗口號(hào),刪除該窗
13、口的第一個(gè)人,進(jìn)行出隊(duì)操作;</p><p> int Check(Queue Que[4], char name[]);</p><p> 判斷用戶輸入的人名是是否存在或已排入隊(duì)伍,若存在且未入隊(duì)則返回他所在的朋友組號(hào)及二維數(shù)組peo的行序。</p><p><b> 函數(shù)調(diào)用關(guān)系圖:</b></p><p>&
14、lt;b> 四 詳細(xì)設(shè)計(jì)</b></p><p><b> 1、名稱</b></p><p> #include<stdio.h></p><p> #include<stdlib.h></p><p> #include<cstdlib></p&g
15、t;<p> #include<string.h></p><p> #include<malloc.h></p><p> #include<iostream></p><p> #include<time.h></p><p> #define Max 100<
16、/p><p> #define OK 1</p><p> #define ERROR 0</p><p> #define INFEASIBLE -1</p><p> #define OVERFLOW -2</p><p> typedef int Status;</p&g
17、t;<p> typedef struct{</p><p> char name[8];</p><p> int group; //成員所在朋友組編號(hào)</p><p> int idnum; //成員編號(hào)</p><p> }Member;
18、 //成員結(jié)構(gòu)體,保存?zhèn)€人信息 </p><p> typedef struct QNode{</p><p> Member data;</p><p> struct QNode *next;</p><p> }QNode,*QueuePtr; // 排隊(duì)時(shí)每個(gè)人信息結(jié)點(diǎn)</p>&l
19、t;p> typedef struct{</p><p> QueuePtr front;</p><p> QueuePtr rear;</p><p><b> }Queue;</b></p><p> Member peo[Max][Max]; //全局變量,保存input.txt文件的
20、內(nèi)容</p><p> int N; //全局變量,保存朋友組數(shù)目</p><p> int tot; //全局變量,窗口總數(shù),隨機(jī)產(chǎn)生</p><p> int id; //定義編號(hào)</p><p> void ReadInput(FILE
21、*fin);</p><p> Status EnQueue(Queue Que[4],FILE *fout);</p><p> Status DeQueue(Queue Que[4],int &num,FILE *fout);</p><p> Status InitQueue(Queue Que[4]);</p><p>
22、 Status InitEn(Queue Que[4],Member a);</p><p> int Check(Queue Que[4], char name[]);</p><p> void menu()</p><p><b> {</b></p><p> printf("\n"
23、);</p><p> printf(" \3 \3 \1歡迎使用模擬排隊(duì)買票\1 \3 \3\n");</p><p> printf(" |-----------------1.X入隊(duì)-------------------| \n");</p><
24、;p> printf(" |-----------------2.隊(duì)頭買完票出隊(duì)----------| \n");</p><p> printf(" |-----------------3.一個(gè)測(cè)試用例結(jié)束--------| \n");</p><p><b> }</b&
25、gt;</p><p> int main()</p><p><b> {</b></p><p> int choice; //用戶選擇功能</p><p> int s=0; //測(cè)試用例序號(hào)</p><p>
26、int num; //窗口號(hào)</p><p> srand(time(NULL)); //初始化隨機(jī)函數(shù)</p><p> tot=rand()%4+1; //隨機(jī)產(chǎn)生窗口數(shù)</p><p> Queue Que[4]; //定義窗口的一維數(shù)組</p><p> FI
27、LE *fin,*fout;</p><p> if(!(fin=fopen("E:\\input.txt","r"))){</p><p> printf("文件打開錯(cuò)誤!");</p><p><b> exit(0);</b></p><p><
28、;b> } </b></p><p> if(!(fout=fopen("E:\\output.txt","w"))){</p><p> printf("文件打開錯(cuò)誤!");</p><p><b> exit(0);</b></p>&
29、lt;p><b> }</b></p><p><b> menu();</b></p><p> for(fscanf(fin,"%d",&N);!feof(fin);fscanf(fin,"%d",&N)) </p><p
30、><b> {</b></p><p><b> s++;</b></p><p> ReadInput(fin);</p><p> InitQueue(Que); //初始化窗口</p><p> //打印input文件中的內(nèi)容</p>
31、<p> printf("\n");</p><p> for(int i=0;i<N;i++)</p><p><b> { </b></p><p> for(int j=1;j<=peo[i][0].idnum;j++)</p><p> printf("
32、;%s ",peo[i][j].name);</p><p> printf("\n");</p><p><b> }</b></p><p> printf("\n");</p><p><b> if(s!=1)</b></p&g
33、t;<p> fprintf(fout,"\n"); //兩個(gè)測(cè)試用例間輸入空行</p><p> fprintf(fout,"Scenario # %d\n",s);</p><p> printf("一共有%d個(gè)窗口\n",tot);</p><p>
34、;<b> for(;;)</b></p><p><b> { </b></p><p> printf("請(qǐng)輸入選擇:");</p><p> scanf("%d",&choice);</p><p> if(choice<0||
35、choice>3)</p><p> {printf("輸入有誤!\n");</p><p> continue;}</p><p> int flag=0;</p><p> switch(choice)</p><p><b> {</b></p>
36、;<p> case 1:{EnQueue(Que,fout);flag=1;}</p><p><b> break;</b></p><p> case 2:{DeQueue(Que,num,fout);flag=1;}</p><p><b> break;</b></p><
37、;p> case 3:break;</p><p><b> }</b></p><p> if(flag==0)</p><p><b> break;</b></p><p><b> }</b></p><p><b>
38、 }</b></p><p> fclose(fin);</p><p> fclose(fout);</p><p><b> return 0;</b></p><p><b> }</b></p><p> void ReadInput(FILE
39、*fin){ //讀入input文件,并用id返回總?cè)藬?shù),附上編號(hào)</p><p> int i,j,num;</p><p> char c[10]; </p><p> for(id=0,i=0;i<N;i++){</p><p> fscanf(fin,"%d",&num)
40、; //讀入每個(gè)朋友組人數(shù)存入每行第一個(gè)元素</p><p> peo[i][0].idnum=num; </p><p> for(j=1;j<=num;j++,id++){ </p><p> peo[i][j].group=i;</p><p> fscanf(fin,"%s",c);&l
41、t;/p><p> strcpy(peo[i][j].name,c);</p><p> peo[i][j].idnum=id; //賦予數(shù)組元素編號(hào)</p><p><b> }</b></p><p><b> }</b></p><p><b> }
42、</b></p><p> Status InitQueue(Queue Que[4]){ //初始化窗口隊(duì)列</p><p> int i,j,s;</p><p> int R[Max];</p><p><b> Member a;</b></p><p>
43、 for(i=0;i<tot;i++)</p><p><b> {</b></p><p> Que[i].front=Que[i].rear=(QueuePtr)malloc(sizeof(QNode));</p><p> if(!Que[i].front)exit(OVERFLOW);</p><p&g
44、t; Que[i].front->next=NULL; </p><p><b> }</b></p><p> for(i=0;i<id;i++)</p><p> R[i]=rand()%2;</p><p> for(i=0;i<N;i++)</p><p>
45、 for(j=1;j<=peo[i][0].idnum;j++)</p><p><b> {</b></p><p> a=peo[i][j];</p><p> s=peo[i][j].idnum;</p><p> if(R[s]==1)</p><p> InitEn(Q
46、ue,a);</p><p><b> }</b></p><p> return OK;</p><p><b> }</b></p><p> int Check(Queue Que[4],char name[])</p><p> // 尋找該人排隊(duì)情況,返回
47、-1則該人不存在!返回-2, 該人已經(jīng)在排隊(duì)中,返回一個(gè)正整數(shù)值,表示他在哪一行。 </p><p><b> {</b></p><p><b> int i, j;</b></p><p> //先判斷該人是否在</p><p> for(i=0;i<N;i++)</p&g
48、t;<p><b> {</b></p><p> for (j=1;j<=peo[i][0].idnum ;j++)</p><p><b> {</b></p><p> if (strcmp(peo[i][j].name,name)==0)</p><p><
49、b> {</b></p><p> //再判斷 該人是否在排隊(duì)</p><p> QueuePtr p; </p><p> for(j=0;j<tot;j++) //遍歷每個(gè)窗口 </p><p><b> {</b></p><p> p = Que[
50、j].front->next; //指針p指向隊(duì)頭</p><p> while(p) </p><p><b> {</b></p><p> if (strcmp(p->data.name, name)==0) //該人已在隊(duì)列中 </p>&
51、lt;p> return -2; </p><p> p=p->next;</p><p><b> }</b></p><p><b> }</b></p><p><b> return i;</b></p><p><b
52、> }</b></p><p><b> }</b></p><p> } </p><p> return -1; </p><p><b> } </b></p><p> Status DeQueue(
53、Queue Que[4],int &num,FILE *fout){ //根據(jù)用戶選擇進(jìn)行出隊(duì)操作</p><p> char c[8];</p><p> printf("請(qǐng)輸入你要出隊(duì)的窗口編號(hào):");</p><p> scanf("%d",&num);</p><
54、p> if(num<0||num>(tot-1))</p><p> {printf("輸入有誤!\n");</p><p> return ERROR;}</p><p> if(!Que[num].front->next)</p><p><b> {</b>&l
55、t;/p><p> printf("該窗口為空!\n");</p><p> fprintf(fout,"Empty Queue! \n");</p><p> return ERROR;</p><p><b> }</b></p><p><b
56、> else</b></p><p><b> {</b></p><p> //刪除隊(duì)列的隊(duì)頭元素,并用char c[]返回出隊(duì)的人名</p><p> QueuePtr p;</p><p> p=Que[num].front->next;</p><p>
57、 strcpy(c,p->data.name);</p><p> Que[num].front->next=p->next;</p><p> if(Que[num].rear==p) </p><p> Que[num].rear=Que[num].front;</p><p><b> free(p)
58、;</b></p><p> printf("DeQueue:%s\n",c);</p><p> fprintf(fout,"DeQueue: %s \n",c);</p><p> return OK;</p><p><b> }</b></p>
59、;<p><b> }</b></p><p> Status EnQueue(Queue Que[4],FILE *fout){ //入隊(duì)函數(shù), 用戶輸入排隊(duì)人,窗口數(shù)為tot個(gè)</p><p> int ch; //存放用戶輸入X所在行數(shù)</p><p> int i,j
60、,besti,best,loc,sum;</p><p> char name[8];</p><p> QNode *p, *q;</p><p> printf("請(qǐng)輸入要入隊(duì)的人名:");</p><p> scanf("%s",name);</p><p> c
61、h=Check(Que,name);</p><p> if(ch==-1) {printf("該人不存在!\n");</p><p> return ERROR;}</p><p> if(ch==-2) {printf("該人已經(jīng)排入隊(duì)伍中!\n");</p><p> return
62、ERROR;}</p><p> for(i=0,best=Max;i<tot;i++) //遍歷所有窗口 ,尋找最佳位置。 </p><p><b> {</b></p><p> p=Que[i].front; </p><p> if(!p->next)
63、 //該隊(duì)伍無(wú)人,則排在第一個(gè)最佳 </p><p><b> {</b></p><p><b> besti= i;</b></p><p><b> best= 1;</b></p><p><b> break; </b><
64、;/p><p><b> } </b></p><p> else // 否則,在第ch行尋找朋友</p><p><b> { </b></p><p> p=Que[i].front->next;</p><p> loc =0; /
65、/記錄當(dāng)前最佳位置</p><p> sum =0; //記錄隊(duì)伍人數(shù)</p><p> while (p) </p><p><b> { </b></p><p><b> sum++;</b></p><p> for(j=1;j<=peo[ch]
66、[0].idnum;j++)</p><p> if(strcmp(peo[ch][j].name,p->data.name)==0)</p><p> loc=sum+1;</p><p> p=p->next;</p><p> } //while為遍歷一個(gè)窗口</p>
67、<p> if(loc==0) //該隊(duì)伍中無(wú)朋友</p><p> loc=sum+1; //排在末尾</p><p> if (best>loc) // 每遍歷一個(gè)窗口后, 判斷是否位置更佳 </p><p><b> {</b></p><p><b> best=lo
68、c;</b></p><p><b> besti= i;</b></p><p><b> }</b></p><p><b> }</b></p><p><b> }</b></p><p> // b
69、est位置已找到,插入到隊(duì)伍中。</p><p> p=Que[besti].front; </p><p> for(i=0;i<best-1;i++) </p><p> p=p->next;</p><p> q=(QueuePtr)malloc(siz
70、eof(QNode)); </p><p> strcpy(q->data.name,name);</p><p> q->next = p->next;</p><p> p->next = q;</p><p><b> //打印鏈隊(duì)列<
71、;/b></p><p> printf("\n");</p><p> fprintf(fout,"EnQueue: %s\n",name);</p><p> for(i=0;i<tot;i++)</p><p><b> {</b></p>
72、<p> p=Que[i].front->next;</p><p> printf("Queue %d:",i);</p><p> fprintf(fout,"Queue %d:",i);</p><p><b> while(p)</b></p><p&g
73、t;<b> {</b></p><p> printf("%s ",p->data.name);</p><p> fprintf(fout,"%s ",p->data.name);</p><p> p=p->next;</p><p><b&g
74、t; }</b></p><p> printf("\n");</p><p> fprintf(fout,"\n");</p><p><b> }</b></p><p> printf("\n");</p><p&
75、gt; return OK;</p><p><b> }</b></p><p> //初始化窗口,對(duì)隨機(jī)產(chǎn)生的成員依次進(jìn)行最佳排隊(duì)</p><p> Status InitEn(Queue Que[4],Member a){</p><p> int ch; //存放用戶輸入X所在行數(shù)
76、</p><p> int i,j,besti,best,loc,sum;</p><p> QNode *p, *q;</p><p> ch=Check(Que,a.name);</p><p> for(i=0,best=Max;i<tot;i++) //遍歷所有窗口 ,尋找最佳位置。 </p><
77、p><b> {</b></p><p> p=Que[i].front; </p><p> if(!p->next) //該隊(duì)伍無(wú)人,則排在第一個(gè)最佳 </p><p><b> {</b></p><p><b>
78、 besti= i;</b></p><p><b> best= 1;</b></p><p><b> break; </b></p><p><b> } </b></p><p> else // 否則,在第ch行尋找朋友</p
79、><p><b> { </b></p><p> p=Que[i].front->next;</p><p> loc =0; //記錄當(dāng)前最佳位置</p><p> sum =0; //記錄隊(duì)伍人數(shù)</p><p> while (p) </p>&l
80、t;p><b> { </b></p><p><b> sum++;</b></p><p> for(j=1;j<=peo[ch][0].idnum;j++)</p><p> if(strcmp(peo[ch][j].name,p->data.name)==0)</p>&l
81、t;p> loc=sum+1;</p><p> p=p->next;</p><p> } //while為遍歷一個(gè)窗口</p><p> if(loc==0) //該隊(duì)伍中無(wú)朋友</p><p> loc=sum+1; //排在末尾</p><p>
82、 if (best>loc) // 每遍歷一個(gè)窗口后, 判斷是否位置更佳 </p><p><b> {</b></p><p><b> best=loc;</b></p><p><b> besti= i;</b></p><p><b> }&
83、lt;/b></p><p><b> }</b></p><p><b> }</b></p><p> // best位置已找到,插入到隊(duì)伍中。</p><p> p=Que[besti].front; </p>
84、;<p> for(i=0;i<best-1;i++) </p><p> p=p->next;</p><p> q=(QueuePtr)malloc(sizeof(QNode)); </p><p> strcpy(q->data.name,a.name);&l
85、t;/p><p> q->next = p->next;</p><p> p->next = q;</p><p> return OK;</p><p><b> }</b></p><p> EnQueue
86、 DeQueue</p><p><b> break </b></p><p><b> F</b></p><p><b> T</b></p><p><b> 五 調(diào)試分析</b></p><p> 按
87、照要求輸入正常的測(cè)試數(shù)據(jù),測(cè)試程序能否正確解決問題,得到正確輸出</p><p> 應(yīng)注意邊界測(cè)試,例如tot,choice的范圍是否在設(shè)定的范圍內(nèi),若不在能給出提示。</p><p> 對(duì)輸入的異常能進(jìn)行處理,例如該隊(duì)沒有人卻進(jìn)行了出隊(duì)操作。</p><p><b> 六 測(cè)試結(jié)果</b></p><p>
88、顯示開始菜單,用戶從鍵盤輸入所需的功能,并進(jìn)行相應(yīng)的操作,直到讀完全部的測(cè)試用例則關(guān)閉文件,程序執(zhí)行結(jié)束,如下圖所示:</p><p> 開始菜單界面,屏幕會(huì)打印出當(dāng)前測(cè)試用例的人員名字,提示窗口總數(shù),并輸入選擇:</p><p> 對(duì)當(dāng)前測(cè)試用例進(jìn)行操作,并將結(jié)果打印到屏幕上,寫入文件:</p><p> 用戶選擇當(dāng)前測(cè)試用例結(jié)束,自動(dòng)跳到下一個(gè)測(cè)試用例循環(huán)
89、操作:</p><p> 當(dāng)讀到文件尾即所有測(cè)試用例結(jié)束時(shí),會(huì)退出執(zhí)行,關(guān)閉文件:</p><p><b> 七 用戶使用說明</b></p><p> 本程序在VC環(huán)境下運(yùn)行。</p><p> 用戶根據(jù)菜單輸入選擇,若選擇入隊(duì),則會(huì)提示輸入人名,若人名符合入隊(duì)要求,則將該人入隊(duì),并打印出當(dāng)前所有的窗口排隊(duì)信
90、息。若選擇出隊(duì),則提示出入窗口號(hào),刪除該窗口的第一個(gè)人并打印在屏幕上,選擇測(cè)試用例結(jié)束則跳到下一個(gè)測(cè)試用例繼續(xù)操作。</p><p> 讀完所有測(cè)試用例會(huì)退出程序執(zhí)行。</p><p><b> 八 課程設(shè)計(jì)總結(jié)</b></p><p> 通過這次課程設(shè)計(jì),充分體會(huì)到靈活運(yùn)用數(shù)據(jù)結(jié)構(gòu)語(yǔ)的重要性,知識(shí)都是緊密聯(lián)系在一起的,如果對(duì)知識(shí)掌握不
91、熟練,打起程序框架來(lái)也比較模糊。調(diào)試時(shí)遇到了很多障礙,出了很多錯(cuò),例如一些很小的錯(cuò)誤但就會(huì)導(dǎo)致程序無(wú)法執(zhí)行,例如掉了個(gè)分號(hào),main的單詞寫錯(cuò),或是大括號(hào)沒有大全,程序漏洞百出,經(jīng)過不斷調(diào)試,體會(huì)到養(yǎng)成良好的習(xí)慣是很重要的,基本的大括號(hào)要提前寫好,再往里面寫內(nèi)容。用循環(huán)結(jié)構(gòu)的時(shí)候也要特別注意,要明白自己需要什么循環(huán)結(jié)構(gòu)for還是while還是do-while,還有在哪里循環(huán),循環(huán)條件是什么,這里是比較容易出錯(cuò)的地方。在定義函數(shù)時(shí),要注意
92、函數(shù)的參數(shù),尤其是對(duì)于數(shù)組參數(shù)特別容易出錯(cuò)。本程序用到了很多指針的操作,這也是錯(cuò)誤的一大根源,如果對(duì)結(jié)構(gòu)不夠熟悉,指針指錯(cuò)是常有的事。還有變量的定義也要注意位置,否則可能導(dǎo)致編譯出錯(cuò),變量名或函數(shù)名也要盡量容易識(shí)別,如choice,group表示選擇和組號(hào)。另外對(duì)于模塊化的掌握更加的得心應(yīng)手。</p><p> 在這次設(shè)計(jì)中,我回顧了很多以前的東西,也發(fā)現(xiàn)了很多的問題,以前都沒遇見過的,收獲很大,在對(duì)不同的功能
93、代碼是不一定可以完整的執(zhí)行的,不過大概都是一樣的,只有一些小的細(xì)節(jié)??粗约鹤龅某绦?,自己就會(huì)又欣慰又難過,欣慰的是自己終于把它做出來(lái)了,而且,做的還好,難過的是自己知道還有很多的不足,但是,由于認(rèn)識(shí)的有限,無(wú)法去做到最好,才知道“書到用時(shí)方恨少”! 我覺得課程設(shè)計(jì)是讓我們對(duì)原有的知識(shí)從了解表面到深入本質(zhì),從個(gè)體學(xué)習(xí)到整體把握的跳躍,對(duì)新知識(shí)的汲取,更是讓我們把課本的知識(shí)應(yīng)用到實(shí)際中,讓我們了解了我們的學(xué)習(xí)有什么用,能夠解決什么樣的問題
94、,增加我們的自信和學(xué)習(xí)的動(dòng)力。</p><p> 此次模擬排隊(duì)買票的設(shè)計(jì)讓我對(duì)隊(duì)列和鏈表了解更深入,可以把它同實(shí)際相結(jié)合。在整個(gè)設(shè)計(jì)過程中,通過怎樣對(duì)把各個(gè)信息連接起來(lái)的分析,鍛煉了對(duì)事情的分析能力,通過怎樣解決過程中出現(xiàn)的問題,提高了查找文獻(xiàn)的能力、對(duì)網(wǎng)絡(luò)資源的利用能力和和其他同學(xué)的交流溝通能力??傊ㄟ^這次的課程設(shè)計(jì),我收獲匪淺。俗話說孰能生巧,經(jīng)過上一次程序設(shè)計(jì)積累下來(lái)的經(jīng)驗(yàn)感覺這次順利的多,希望在C語(yǔ)
溫馨提示
- 1. 本站所有資源如無(wú)特殊說明,都需要本地電腦安裝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ù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 眾賞文庫(kù)僅提供信息存儲(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ì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 數(shù)據(jù)庫(kù)課程設(shè)計(jì)報(bào)告
- 數(shù)據(jù)庫(kù)課程設(shè)計(jì)報(bào)告
- 數(shù)據(jù)庫(kù)課程設(shè)計(jì)報(bào)告
- 數(shù)據(jù)庫(kù)課程設(shè)計(jì)報(bào)告
- 數(shù)據(jù)庫(kù)課程設(shè)計(jì)報(bào)告
- 數(shù)據(jù)庫(kù)課程設(shè)計(jì)報(bào)告
- 數(shù)據(jù)庫(kù)課程設(shè)計(jì)報(bào)告
- 數(shù)據(jù)庫(kù)課程設(shè)計(jì)---數(shù)據(jù)庫(kù)
- 數(shù)據(jù)庫(kù)課程設(shè)計(jì)報(bào)告--設(shè)備儀器數(shù)據(jù)庫(kù)設(shè)計(jì)
- 數(shù)據(jù)庫(kù)課程設(shè)計(jì)--數(shù)據(jù)庫(kù)設(shè)計(jì)
- 數(shù)據(jù)庫(kù)課程設(shè)計(jì)報(bào)告模板
- 數(shù)據(jù)庫(kù)原理課程設(shè)計(jì)報(bào)告
- 數(shù)據(jù)庫(kù)原理課程設(shè)計(jì)報(bào)告
- 數(shù)據(jù)庫(kù)課程設(shè)計(jì)報(bào)告 (2)
- 數(shù)據(jù)庫(kù)應(yīng)用課程設(shè)計(jì)報(bào)告
- 數(shù)據(jù)庫(kù)課程設(shè)計(jì)--數(shù)據(jù)庫(kù)原理及應(yīng)用課程設(shè)計(jì)
- 數(shù)據(jù)庫(kù)課程設(shè)計(jì)-模塊設(shè)計(jì)報(bào)告
- 數(shù)據(jù)庫(kù)課程設(shè)計(jì)
- 工資管理系統(tǒng)數(shù)據(jù)庫(kù)設(shè)計(jì)報(bào)告(數(shù)據(jù)庫(kù)課程設(shè)計(jì))
- 工資管理系統(tǒng)數(shù)據(jù)庫(kù)設(shè)計(jì)報(bào)告數(shù)據(jù)庫(kù)課程設(shè)計(jì)
評(píng)論
0/150
提交評(píng)論