

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進行舉報或認領(lǐng)
文檔簡介
1、<p><b> 模擬排隊買票</b></p><p><b> 一 目的</b></p><p> 使用戶能夠通過本程序?qū)崿F(xiàn)所需功能,用戶可以通過本程序進行模擬排隊,包括入隊和出隊操作,信息包含在input.txt文件中,用戶進行的操作結(jié)果將保存在output.txt文件中。</p><p><b
2、> 二 需求分析</b></p><p> 1、如何存放和查找所有的人員信息</p><p> 用二維數(shù)組來存放和查找數(shù)據(jù),每個數(shù)組元素就存放一個人的信息結(jié)構(gòu)體Member,包括名字name,所在朋友組group,以及編號idnum,每行的第一個元素不存放人員信息而存放該朋友組的人數(shù)便于以后的遍歷。</p><p> 2、如何操作EnQu
3、eue和DeQueue命令</p><p> 關(guān)于操作EnQueue和DeQueue命令,這可以用隊列來模擬,由于有插隊現(xiàn)象的存在,不能單純地用一個數(shù)組來表示隊列,因為這樣的話,插入一個朋友,則他后面的人都要往后移一個單位,刪除一個人,則他后面的人都要前移一個,這樣無論插入還是刪除都要移動大量的元素,所以,采用鏈表的形式,構(gòu)造鏈隊列,頭結(jié)點的指針指向隊頭元素,尾指針指向隊尾元素。</p><
4、p> 輸入Enqueue命令,如果隊伍里有朋友,則排在朋友后面;如果沒有遇到朋友,則排在隊尾。入隊時,直接向鏈隊列中插入一個新節(jié)點即可。</p><p> 輸入Dequeue命令,則根據(jù)“先進先出”,按照各個元素和它后繼元素的先后順序,每次刪除隊列中的第一個。程序結(jié)構(gòu)如下所示。</p><p> for(讀測試文件)</p><p><b>
5、 {</b></p><p><b> Switch{</b></p><p> case 輸入Enqueue:</p><p><b> {讀入名字;</b></p><p><b> 插入鏈隊列;</b></p><p><
6、b> } </b></p><p> case 輸入 Dequeue:</p><p> {刪除隊列的第一個名字;</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è)計</b></p><p> 1、本程序包含兩個模塊</p><p> ?。?)主程序模塊 </p><p><b> main()</b></p><p><b> {<
9、/b></p><p><b> 定義及初始化;</b></p><p> 顯示開始菜單界面,讓用戶選擇操作;</p><p><b> 進行操作;</b></p><p><b> 關(guān)閉文件,結(jié)束;</b></p><p><b&g
10、t; }</b></p><p><b> (2)函數(shù)定義模塊</b></p><p> 定義初始化,入隊,出隊操作等6個功能函數(shù)</p><p> void ReadInput(FILE *fin);</p><p> 將input文件中的內(nèi)容讀入到二維數(shù)peo當(dāng)中,并附上編號。</p>
11、;<p> Status InitQueue(Queue Que[4]);</p><p> 將input文件讀入到peo數(shù)組里面去,并進行窗口初始化,隨機選一部分人進行入隊,每一個都將按照最佳位置排入隊伍。</p><p> Status InitEn(Queue Que[4],Member a);</p><p> 將選出來的人進行按最佳位
12、置入隊。</p><p> Status EnQueue(Queue Que[4],FILE *fout);</p><p> 由用戶輸入人名,再進行最佳入隊操作;</p><p> Status DeQueue(Queue Que[4],int &num,FILE *fout);</p><p> 由用戶選擇窗口號,刪除該窗
13、口的第一個人,進行出隊操作;</p><p> int Check(Queue Que[4], char name[]);</p><p> 判斷用戶輸入的人名是是否存在或已排入隊伍,若存在且未入隊則返回他所在的朋友組號及二維數(shù)組peo的行序。</p><p><b> 函數(shù)調(diào)用關(guān)系圖:</b></p><p>&
14、lt;b> 四 詳細設(shè)計</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; //成員所在朋友組編號</p><p> int idnum; //成員編號</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; // 排隊時每個人信息結(jié)點</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ù),隨機產(chǎn)生</p><p> int id; //定義編號</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歡迎使用模擬排隊買票\1 \3 \3\n");</p><p> printf(" |-----------------1.X入隊-------------------| \n");</p><
24、;p> printf(" |-----------------2.隊頭買完票出隊----------| \n");</p><p> printf(" |-----------------3.一個測試用例結(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; //測試用例序號</p><p>
26、int num; //窗口號</p><p> srand(time(NULL)); //初始化隨機函數(shù)</p><p> tot=rand()%4+1; //隨機產(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("文件打開錯誤!");</p><p><b> exit(0);</b></p><p><
28、;b> } </b></p><p> if(!(fout=fopen("E:\\output.txt","w"))){</p><p> printf("文件打開錯誤!");</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"); //兩個測試用例間輸入空行</p><p> fprintf(fout,"Scenario # %d\n",s);</p><p> printf("一共有%d個窗口\n",tot);</p><p>
34、;<b> for(;;)</b></p><p><b> { </b></p><p> printf("請輸入選擇:");</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ù),附上編號</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、; //讀入每個朋友組人數(shù)存入每行第一個元素</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ù)組元素編號</p><p><b> }</b></p><p><b> }</b></p><p><b> }
42、</b></p><p> Status InitQueue(Queue Que[4]){ //初始化窗口隊列</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> // 尋找該人排隊情況,返回
47、-1則該人不存在!返回-2, 該人已經(jīng)在排隊中,返回一個正整數(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> //再判斷 該人是否在排隊</p><p> QueuePtr p; </p><p> for(j=0;j<tot;j++) //遍歷每個窗口 </p><p><b> {</b></p><p> p = Que[
50、j].front->next; //指針p指向隊頭</p><p> while(p) </p><p><b> {</b></p><p> if (strcmp(p->data.name, name)==0) //該人已在隊列中 </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ù)用戶選擇進行出隊操作</p><p> char c[8];</p><p> printf("請輸入你要出隊的窗口編號:");</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> //刪除隊列的隊頭元素,并用char c[]返回出隊的人名</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){ //入隊函數(shù), 用戶輸入排隊人,窗口數(shù)為tot個</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("請輸入要入隊的人名:");</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)排入隊伍中!\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、 //該隊伍無人,則排在第一個最佳 </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; //記錄隊伍人數(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為遍歷一個窗口</p>
67、<p> if(loc==0) //該隊伍中無朋友</p><p> loc=sum+1; //排在末尾</p><p> if (best>loc) // 每遍歷一個窗口后, 判斷是否位置更佳 </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位置已找到,插入到隊伍中。</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> //打印鏈隊列<
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> //初始化窗口,對隨機產(chǎn)生的成員依次進行最佳排隊</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) //該隊伍無人,則排在第一個最佳 </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; //記錄隊伍人數(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為遍歷一個窗口</p><p> if(loc==0) //該隊伍中無朋友</p><p> loc=sum+1; //排在末尾</p><p>
82、 if (best>loc) // 每遍歷一個窗口后, 判斷是否位置更佳 </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位置已找到,插入到隊伍中。</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、照要求輸入正常的測試數(shù)據(jù),測試程序能否正確解決問題,得到正確輸出</p><p> 應(yīng)注意邊界測試,例如tot,choice的范圍是否在設(shè)定的范圍內(nèi),若不在能給出提示。</p><p> 對輸入的異常能進行處理,例如該隊沒有人卻進行了出隊操作。</p><p><b> 六 測試結(jié)果</b></p><p>
88、顯示開始菜單,用戶從鍵盤輸入所需的功能,并進行相應(yīng)的操作,直到讀完全部的測試用例則關(guān)閉文件,程序執(zhí)行結(jié)束,如下圖所示:</p><p> 開始菜單界面,屏幕會打印出當(dāng)前測試用例的人員名字,提示窗口總數(shù),并輸入選擇:</p><p> 對當(dāng)前測試用例進行操作,并將結(jié)果打印到屏幕上,寫入文件:</p><p> 用戶選擇當(dāng)前測試用例結(jié)束,自動跳到下一個測試用例循環(huán)
89、操作:</p><p> 當(dāng)讀到文件尾即所有測試用例結(jié)束時,會退出執(zhí)行,關(guān)閉文件:</p><p><b> 七 用戶使用說明</b></p><p> 本程序在VC環(huán)境下運行。</p><p> 用戶根據(jù)菜單輸入選擇,若選擇入隊,則會提示輸入人名,若人名符合入隊要求,則將該人入隊,并打印出當(dāng)前所有的窗口排隊信
90、息。若選擇出隊,則提示出入窗口號,刪除該窗口的第一個人并打印在屏幕上,選擇測試用例結(jié)束則跳到下一個測試用例繼續(xù)操作。</p><p> 讀完所有測試用例會退出程序執(zhí)行。</p><p><b> 八 課程設(shè)計總結(jié)</b></p><p> 通過這次課程設(shè)計,充分體會到靈活運用數(shù)據(jù)結(jié)構(gòu)語的重要性,知識都是緊密聯(lián)系在一起的,如果對知識掌握不
91、熟練,打起程序框架來也比較模糊。調(diào)試時遇到了很多障礙,出了很多錯,例如一些很小的錯誤但就會導(dǎo)致程序無法執(zhí)行,例如掉了個分號,main的單詞寫錯,或是大括號沒有大全,程序漏洞百出,經(jīng)過不斷調(diào)試,體會到養(yǎng)成良好的習(xí)慣是很重要的,基本的大括號要提前寫好,再往里面寫內(nèi)容。用循環(huán)結(jié)構(gòu)的時候也要特別注意,要明白自己需要什么循環(huán)結(jié)構(gòu)for還是while還是do-while,還有在哪里循環(huán),循環(huán)條件是什么,這里是比較容易出錯的地方。在定義函數(shù)時,要注意
92、函數(shù)的參數(shù),尤其是對于數(shù)組參數(shù)特別容易出錯。本程序用到了很多指針的操作,這也是錯誤的一大根源,如果對結(jié)構(gòu)不夠熟悉,指針指錯是常有的事。還有變量的定義也要注意位置,否則可能導(dǎo)致編譯出錯,變量名或函數(shù)名也要盡量容易識別,如choice,group表示選擇和組號。另外對于模塊化的掌握更加的得心應(yīng)手。</p><p> 在這次設(shè)計中,我回顧了很多以前的東西,也發(fā)現(xiàn)了很多的問題,以前都沒遇見過的,收獲很大,在對不同的功能
93、代碼是不一定可以完整的執(zhí)行的,不過大概都是一樣的,只有一些小的細節(jié)??粗约鹤龅某绦?,自己就會又欣慰又難過,欣慰的是自己終于把它做出來了,而且,做的還好,難過的是自己知道還有很多的不足,但是,由于認識的有限,無法去做到最好,才知道“書到用時方恨少”! 我覺得課程設(shè)計是讓我們對原有的知識從了解表面到深入本質(zhì),從個體學(xué)習(xí)到整體把握的跳躍,對新知識的汲取,更是讓我們把課本的知識應(yīng)用到實際中,讓我們了解了我們的學(xué)習(xí)有什么用,能夠解決什么樣的問題
94、,增加我們的自信和學(xué)習(xí)的動力。</p><p> 此次模擬排隊買票的設(shè)計讓我對隊列和鏈表了解更深入,可以把它同實際相結(jié)合。在整個設(shè)計過程中,通過怎樣對把各個信息連接起來的分析,鍛煉了對事情的分析能力,通過怎樣解決過程中出現(xiàn)的問題,提高了查找文獻的能力、對網(wǎng)絡(luò)資源的利用能力和和其他同學(xué)的交流溝通能力??傊ㄟ^這次的課程設(shè)計,我收獲匪淺。俗話說孰能生巧,經(jīng)過上一次程序設(shè)計積累下來的經(jīng)驗感覺這次順利的多,希望在C語
溫馨提示
- 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. 眾賞文庫僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 數(shù)據(jù)庫課程設(shè)計報告
- 數(shù)據(jù)庫課程設(shè)計報告
- 數(shù)據(jù)庫課程設(shè)計報告
- 數(shù)據(jù)庫課程設(shè)計報告
- 數(shù)據(jù)庫課程設(shè)計報告
- 數(shù)據(jù)庫課程設(shè)計報告
- 數(shù)據(jù)庫課程設(shè)計報告
- 數(shù)據(jù)庫課程設(shè)計---數(shù)據(jù)庫
- 數(shù)據(jù)庫課程設(shè)計報告--設(shè)備儀器數(shù)據(jù)庫設(shè)計
- 數(shù)據(jù)庫課程設(shè)計--數(shù)據(jù)庫設(shè)計
- 數(shù)據(jù)庫課程設(shè)計報告模板
- 數(shù)據(jù)庫原理課程設(shè)計報告
- 數(shù)據(jù)庫原理課程設(shè)計報告
- 數(shù)據(jù)庫課程設(shè)計報告 (2)
- 數(shù)據(jù)庫應(yīng)用課程設(shè)計報告
- 數(shù)據(jù)庫課程設(shè)計--數(shù)據(jù)庫原理及應(yīng)用課程設(shè)計
- 數(shù)據(jù)庫課程設(shè)計-模塊設(shè)計報告
- 數(shù)據(jù)庫課程設(shè)計
- 工資管理系統(tǒng)數(shù)據(jù)庫設(shè)計報告(數(shù)據(jù)庫課程設(shè)計)
- 工資管理系統(tǒng)數(shù)據(jù)庫設(shè)計報告數(shù)據(jù)庫課程設(shè)計
評論
0/150
提交評論