




版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領
文檔簡介
1、目錄封面1任務書1一、需求分析51.1、系統設計目的與意義 51.2、系統功能需求(系統流程圖)51.3、輸入輸出的要求6二、結構設計6三、界面設計與各功能模塊實現.7四、系統調試8五、使用說明及編程體會95.1、使用說明 9 5.2、編程體會 13附件 13參考文獻 32評分表 33(一)需求分析1.1、系統設計目的與意義當今時代是飛速發展的信息時代。在各行各業中離不開信息處理,這正是計算機被廣泛應用于信息管理系統的環境。計算機的最大好處在于利用它能夠進行信息管理。使用計算機進行信息控制,不僅提高了工作效率,而且大大的提高了其安全性。尤其對于復雜的信息管理,計算機能夠充分發揮它的優越性。計算
2、機進行信息管理與信息管理系統的開發密切相關,系統的開發是系統管理的前提。 本系統就是為了管理好選課信息而設計的。學校作為一種信息資源的集散地,學生和課程繁多,包含很多的信息數據的管理,現今,有很多的學校都是初步開始使用,甚至尚未使用計算機進行信息管理。根據調查得知,他們以前對信息管理的主要方式是基于文本、表格等紙介質的手工處理,對于選課情況的統計和查詢等往往采用對課程的人工檢查進行,對學生的選課權限、以及選課代號等用人工計算、手抄進行。數據信息處理工作量大,容易出錯;由于數據繁多,容易丟失,且不易查找。總的來說,缺乏系統,規范的信息管理手段。盡管學校都有計算機,但是尚未用于信息管理,沒有發揮它
3、的效力,資源閑置比較突出,這就是管理信息系統的開發的基本環境。數據處理手工操作,工作量大,出錯率高,出錯后不易更改。學校采取手工方式對學生選課情況進行人工管理,由于信息比較多,選課信息的管理工作混亂而又復雜;一般選課情況是記錄在文件上,課程的數目和代號也記錄在文件中,學校的工作人員也只是當時對它比較清楚,時間長了,如再要進行查詢,就得在眾多的資料中翻閱、查找了,造成查詢費時、費力。如要對很長時間以前的選課進行更改就更加困難了。 基于這些問題,我認為有必要建立一個學生選課系統,使選課管理工作規范化,系統化,程序化,避免選課管理的隨意性,提高信息處理的速度和準確性,能夠及時、準確、有效的查詢和修改
4、選課情況。1.2、系統功能需求(系統流程圖)主 模 塊學生模塊管理員模塊學生選課學生情況選課情況 退出系統 增加課程刪除學生刪除課程 填寫成績 更改學分 學生情況選課情況保存數據 增加學生退出系統1.3、輸入輸出的要求(1) 輸入:確定與功能有關的所有輸入信息,包括數據來源、意義、格式、接收方法、數量、輸入范圍及處理方法,必須說明時間要求、優先順序、操作控制和使用的輸入設備(媒體)。(2) 輸出:對錯誤輸入提示(二)結構設計(1)(ER圖);(2)類層次圖 StudentSubjectCourse(三)界面設計與各功能模塊實現界面設計1、 主界面:* * 選修課小系統 * * * 操作方式:
5、* 1.選修課系統學生端 * * 2.選修課系統管理端 * *2、選修課系統學生端: 選修課系統學生端 操作方式: 1.學生選課 2.學生情況 3.選課情況 4.退出系統 3、選修課系統管理端 : 選修課系統管理端 操作方式: 1.增加學生 2.增加課程 3.刪除學生 4.刪除課程 5.填寫成績 6.更改學分 7.學生情況 8.選課情況 9.保存數據 0.退出系統 (四)系統調試在這一節中,主要解決的了兩個問題,一個是系統的聯機文檔,另一個是系統的測試,下面我們分別加以說明。作為一個完整的系統,聯機文檔是其中不可缺少的部分也是相當重要的部分。好的文檔能夠使用戶快速了解并準確的使用系統的各項功能
6、。減少誤操作,減少錯誤產生的可能,這對用戶和開發人員都有很多的好處。所以在開發本系統中,也加入了不少的文檔,除了對于四大模塊的詳細說明外,對于易出錯和不易操作的地方(如多條件查詢部分)又作了詳細的說明。 由于本身能力的局限性,所以做編寫的代碼,即使經過反復檢查也難免出錯所以在本階段力求使用有限的時間找出盡可能多的錯誤,力求系統盡量正確。我們在本系統的測試中使用了黑盒法(即不關心程序內部的邏輯結構,而是根據程序的功能來設計是檢測)請一位不熟悉本系統的人來進行隨意性的操作,打破習慣的操作順序,從中發現錯誤,在此階段系統的大量錯誤得到了改正。 信息管理系統所涉及的數據庫設計的重要步驟加載測試。加載測
7、試工作貫穿于程序測試工作的全過程,整個錄入、修改、查詢、處理工作均可視為對數據庫的加載測試工作。要設計出一個好的信息管理系統數據庫,除滿足系統所要求的功能外,還必須遵守下列原則:1)基本表的個數越少越好。2) 主鍵的個數越少越好。鍵是表間連接的工具,主鍵越少,表間的連接就越簡單。3)字段的個數越少越好。4) 所有基本表的設計均應盡量符合第三范式。數據庫的設計中,如何處理多對多的關系和如何設計主鍵,是兩個有著較大難度、需要重點考慮的問題。 例如:-Configuration: 8 - Win32 Debug-Compiling.9.cppE:新建文件夾9.cpp(53) : error C253
8、5: '_thiscall student:student(void)' : member function already defined or declared E:新建文件夾9.cpp(24) : see declaration of 'student:student'執行 cl.exe 時出錯.9.obj - 1 error(s), 0 warning(s)改正:將中的去掉(五)使用說明及編程體會5.1使用說明1、登錄首先,運行學生選課系統,出現學生選課系統畫面 :2、進入選修課系統學生端當主菜單出現后,在“請選擇登錄方式:”后輸入“1”,就進入了“選修
9、課系統學生端”,界面如下:3、選課在“請選擇操作方式: ”輸入“1”,進入網上選課系統,請首先進入課程預覽菜單,預覽自己的課程表,學生自行選課后,也可進入課程預覽菜單,查看選課結果。課程表中已有的課程為教務處按各班教學計劃整班指定上去的,不得自行退選4、管理員登錄管理員密碼admin。用管理員帳號登錄可以查看每個人的選課,及退課情況。(1)如密碼正確,則出現以下界面:此時,管理員可以在“請選擇操作方式: ”后輸入相應的數字,比如數日“1”,那么所執行的操作就是:增加學生,則出現以下界面: (2)若密碼不正確,則出現界面第一次密碼錯誤第二次密碼錯誤5 、退出系統 (1)學生選課完成后可以按“4”
10、退出選課系統,以防他人修改數據。(2)密碼錯誤次數超過3次,可按任意鍵退出,界面如下:5.2編程體會 剛看到這個課程設計題目時,覺得這個課題比較難。今天回過去看看,卻十分的欣慰,因為通過我們的努力終于完成了。雖然這不是我讀大學以來第一次做課程設計,但卻是花費心血最多的一次,這是對我這學期學習下來最好的檢驗。經過這次課程設計,我的能力有了很大的提高,比如操作能力、分析問題的能力、合作精神、嚴謹的工作作風等方方面面都進步了。 還要特別感謝老師對我的悉心指導,幫我理清設計思路,指導操作方法,并對我所做的設計方案提出有效的改進方案。老師淵博的知識、嚴謹的作風、誨人不倦的態度和學術上精益求精的精神讓我受
11、益終生。附件:#include <iostream>#include <iomanip>#include <fstream>#include <conio.h>using namespace std; /定義課程class course /某個學生所學的課程中的某一個public:char cname20; /課程名稱float grade; /課程成績course *Next; /指向下一個課程的指針;/學生類class studentpublic:student()root = NULL;const int maxcourse = 5;fac
12、tcourse = 0;void readname(char N ); /讀入學生的姓名void getname(char N); /得到學生的姓名void wrecourse(char N,float score); /要據課程名寫入學生課程的成績float average(); /學生課程的平均成績void addcourse(char N,float g); /給學生增加一門課int findcourse(char N); /查找是否已有此課程,如果有返回,如果沒有返回int retfactcourse() return factcourse; /得到所學的課程數目course *ret
13、root() return root; /利用鍵表將所有的課程保存起來int retmaxcourse() return 5; /得到最多可學的課程數目void clrroot() /清零root = NULL;factcourse = 0;private:char sname20; /學生的姓名int maxcourse; /學生最多可以學五門課程int factcourse; /學生實際所學的課程數目course *root; /課程的根結點指針;void student:readname (char N)/讀入學生的姓名 strcpy(sname,N); void student:get
14、name(char N)/得到學生的姓名 strcpy(N,sname); void student:wrecourse(char N,float score)/要據課程名寫入學生課程的成績course *p = root;if(p=NULL)return;if(p!=NULL)p = p->Next;while(p)if(strcmp(p->cname,N)=0)p->grade = score;p = p->Next;float student:average()/學生課程的平均成績float aver=0.0;course *p = root;while (p)
15、aver = aver+p->grade; aver = aver/factcourse;return aver; void student:addcourse (char N,float g)/給學生增加一門課course *s = new course;s->Next=NULL;if(root = NULL)root = s;course *p = root;course *newcourse = new course;newcourse->Next = p->Next;p->Next=newcourse;strcpy(newcourse->cname,
16、N);newcourse->grade = g;factcourse+;int student:findcourse (char N)/查找是否已有此課程,如果有返回,如果沒有返回course *p = root;if(root=NULL)return 0;p = p->Next;while(p) if(strcmp(p->cname,N)=0)return 1;p = p->Next;return 0; class studentdbpublic:student stu;studentdb *Next; ;struct studentnamechar tname20;
17、 /學生的名字float result; /學生所得的該課程分數studentname *Next; ; /課程類class subjectpublic:subject()first = NULL;maxstudent=30;activestudnet=0; float readcredit(); /得到課程的學分void getcredit(float a); /設置學分float getaverage(); /得到學生的平均成績float getresult(char N); /查找某個學生的成績void getkname(char N); /讀出課程的名稱void setkname(ch
18、ar N); /讀入課程的名稱studentname *retfirst() return first; /返回根結點void findstudent(studentdb *P); /根據該課程的名稱,尋找選這課程的學生int retactivestudent() return activestudnet; /返回實際學生數int retmaxstudent() return 30; /返回最多學生數void clractivestudnet() activestudnet = 0; /從文件中讀出來后將實際學生數清零private:int maxstudent; /最多學生數int acti
19、vestudnet; /實際學生數studentname *first; /學生名單float credit; /該課程的學分float averagerusult; /該課程的平均成績char kname20; /該課程的名稱;float subject:readcredit ()/得到課程的學分 return credit; void subject:getcredit (float a)/設置學分 credit=a; float subject:getaverage()/得到學生的平均成績float k = 0.0;studentname *p;p=first->Next;if(p
20、=NULL)return 0;while(p)k = k + p->result;p = p->Next ; return k/activestudnet; float subject:getresult (char N) /查找某個學生的成績studentname *p;p = first;while(p)if(strcpy(p->tname ,N)=0)return p->result;p = p->Next ; return -1; void subject:getkname (char N) /讀出課程的名稱 strcpy(N,kname); void s
21、ubject:setkname (char N) /讀入課程的名稱 strcpy(kname,N); void subject:findstudent(studentdb *P) /根據該課程的名稱,尋找選這課程的學生studentname *newcode = new studentname;newcode->Next=NULL;first = newcode;studentname *T = first;studentdb *K = P->Next;while(K)course *Y = K->stu.retroot();if(Y =NULL) K = K->Nex
22、t;continue; if(Y!=NULL)Y = Y->Next;while(Y) if(strcmp(Y->cname,kname)=0)studentname *Acode = new studentname;char Name20;K->stu.getname(Name);strcpy(Acode->tname,Name);Acode->result = Y->grade;Acode->Next = T->Next;T->Next = Acode;activestudnet = activestudnet + 1;break; Y
23、 = Y->Next; K = K->Next; return ; void tuichu()system("cls");cout<<"nn謝謝你使用選修課系統nn"<<endl;cout<<"n you're welcome ! n"<<endl; getch();exit(-1); /總菜單char menu()int k=0;char a3,c,i;system("cls");cout<<endl<<endl;cout
24、<<"*n"<<"* *n"<<"* 學生選修課系統 *n"<<"* *n"<<"* *n"<<"* 操作方式: *n"<<"* 1.選修課系統學生端 *n"<<"* *n"<<"* 2.選修課系統管理端 *n"<<"* *n"<<"*n"<
25、<endl;while(1)cout<<"ntt請選擇登入方式: "cin>>a;if(strlen(a)=1)for(i='1'i<='2'i+)c=i;if(c=a0)return c; cerr<<"nntttt輸入有誤!n"<<endl;k+;if(k>2)system("cls");cerr<<"nnntt提示:錯誤輸入次數超過三次,你將被強制退出!nn"<<endl;cout<
26、<"tt按任意鍵繼續"<<endl;getch();tuichu(); /選修課系統端操作char custom()char A10;char b;char i;int k = 0;system("cls");cout<<"nnn"<<"n"<<" 選修課系統學生端 n"<<" n"<<" 操作方式:. n"<<" 1、 學生選課 n"<&l
27、t;" 2、 學生情況 n"<<" 3、 選課情況 n"<<" 4、 退出系統 n"<<" n"<<"n"<<endl;while(1)cout<<"ttt請選擇操作方式: "cin>>A;if(strlen(A)=1)for(i='1'i<='4'i+)b=i;if(b=A0) return b; cerr<<"ntttt輸入有誤!
28、n"<<endl;k+;if(k>2)system("cls");cerr<<"nnttt提示:錯誤輸入超過三次!你將被強制退出!n"<<endl;cout<<"tt按任意鍵繼續"<<endl;getch();tuichu(); char server()char A10;char b;char i;int k = 0;system("cls");cout<<"nnn"<<"n"
29、;<<" n"<<" 選修課系統管理端 n"<<" n"<<" 操作方式: n"<<" 1.增加學生 2.增加課程 n"<<" 3.刪除學生 4.刪除課程 n"<<" 5.填寫成績 6.更改學分 n"<<" 7.學生情況 8.選課情況 n"<<" 9.保存數據 0.退出系統 n"<<" n
30、"<<"n"<<endl;while(1)cout<<"tt 請選擇操作方式: "cin>>A;if(strlen(A)=1)for(i='0'i<='9'i+)b=i;if(b=A0)return b; cerr<<"ntttt輸入有誤!n"<<endl;k+;if(k>2)cerr<<"錯誤輸入超過三次!n"exit(-1); /密碼檢查void password()int
31、k=0,i;char A="admin"char B10;char a;system("cls");for(i=0;i<8;i+)cout<<endl;while(k<=2)printf("ttt請輸入管理員密碼:");i=0;while(1)a=getch();if(a=13)break;Bi=a;i+;printf("*");Bi='0'if(strcmp(A,B)=0)return;elsek+;cerr<<"nnttt密碼輸入錯誤!請重新輸入!n
32、"<<endl;if(k>=3)system("cls");cerr<<"nnttt輸入錯誤密碼超過三次!請按任意鍵退出."<<endl;getch();tuichu();struct subjectdbsubject sub;subjectdb *Next;int menu_2_7(studentdb *P);int menu_2_9(studentdb *Y,subjectdb *P);int menu_2_8(subjectdb *P);/學生端功能函數int menu_1_1(studentdb
33、 *P,subjectdb *X) /學生選課system("cls");cout<<"nntttt學生選課操作"<<endl;studentdb *q=P->Next;int i;char N20,M20;if(q!=NULL)cout<<"nnntt所有學生名單如下:n"<<endl;elsecerr<<"nnntt對不起,暫無學生名單!請先創建!請按任意鍵繼續."<<endl;return 1; while(q)q->stu.
34、getname(N);cout<<"tttt"<<N;cout<<endl;q = q->Next ; q = P->Next;if(q=NULL)return 1;cout<<"nntt 請輸入學生姓名:"cin>>N;i=0;q=P->Next;while(q)q->stu.getname(M);if(strcmp(N,M)=0)i+;q = q->Next; int j=0,k=1;if(i=0)cout<<"nntt沒有這個學生! 請按
35、任意鍵返回."<<endl;return 1; else if(i>1)cout<<"nntt共找到"<<i<<"個姓名為"<<N<<"的學生"<<endl;cout<<"tt選擇第幾個:"cin>>k; if(k>i|k<=0)cerr<<"nttt輸入有誤!按任意鍵繼續"<<endl;return 1; q = P->Next;
36、j=0;while(q)q->stu.getname(M);if(strcmp(N,M)=0)j+;if(j=k)if(q->stu.retfactcourse()>=q->stu.retmaxcourse()cout<<"ntt所選課程已滿!按任意鍵繼續"<<endl;return 1; elsesubjectdb *t=X->Next;char N120;system("cls");if(t!=NULL)cout<<"nnntt所有課程如下:"<<end
37、l;cout<<"ntttt課程名稱tt 學分"<<endl; elsecerr<<"nnntt對不起,暫時沒有課程"<<endl;return 1; while(t)t->sub.getkname(N1);cout<<"tttt "<<N1<<setw(26-strlen(N1)<<t->sub.readcredit()<<endl;t = t->Next ; char N220;cout<<&q
38、uot;nt 輸入你所要選的課程: "cin>>N2;t = X->Next;while(t)t->sub.getkname(N1);if(strcmp(N1,N2)=0)if(q->stu.findcourse(N2)=1)cout<<"ntt此課程你已選過了,不能再選.按任意鍵繼續"<<endl;return 1; t=X->Next;char NA20;while(t)t->sub.getkname(NA);if(strcmp(NA,N2)=0)if(t->sub.retactivest
39、udent()>=t->sub.retmaxstudent ()cout<<"ntt此課程已選滿,不能選.按任意鍵繼續"<<endl;return 1; t = t->Next; q->stu.addcourse(N2,0.0);cout<<"nntt選課成功!按任意鍵繼續"<<endl;return 1; t = t->Next; cerr<<"ntt沒有此課程!按任意鍵繼續"<<endl; return 1; q = q->
40、Next; return 1; int menu_1_2(studentdb *P,subjectdb *X) /學生情況studentdb *q=P->Next;char N20;system("cls");cout<<"nntttt學生情況操作"<<endl;int i;if(q!=NULL)cout<<"nnntt所有學生選課信息如下:n"<<endl<<endl;cout<<"tt 姓名ttt選課情況n"<<endl;
41、 elsecerr<<"nnntt對不起,暫時沒有學生名單!請按任意鍵繼續."<<endl;return 1; while(q)q->stu.getname(N);cout<<"tt "<<N<<setw(25-strlen(N)<<" 已選"<<q->stu.retfactcourse()<<" 門課"<<endl;q = q->Next ; char M20;cout<<&q
42、uot;ntt輸入要查看的學生姓名:"cin>>M;i=0;q=P->Next;while(q)q->stu.getname(N);if(strcmp(N,M)=0)i+;q = q->Next; int j=0,k=1;if(i=0)cout<<"nttt沒找到這個學生!請按任意鍵繼續."<<endl;return 1; else if(i>1)cout<<"ntt共找到"<<i<<"個姓名為"<<M<<
43、"的學生"<<endl;cout<<"tt選擇第幾個:"cin>>k; if(k>i|k<=0)cerr<<"nttt輸入有誤!按任意鍵繼續."<<endl;return 1; q = P->Next;j=0;q=P->Next;while(q)q->stu.getname(N);if(strcmp(N,M)=0)j+;if(j=k)system("cls");course *T=q->stu.retroot();if(
44、T=NULL)cout<<"nnnttt"<<N<<"同學你還未選課! 請按任意鍵繼續."<<endl;return 1; if (T!=NULL)T = T->Next;cout<<"nnntt"<<N<<"同學你已選"<<q->stu.retfactcourse()<<"門課,具體如下nn"<<endl;cout<<"ttt課程名稱tt成績
45、n"<<endl;while(T)cout<<"ttt "<<T->cname<<setw(25-strlen(T->cname)<<T->grade<<endl;T = T->Next; j=0; q = q->Next; cout<<"ntt請按任意鍵繼續."<<endl;return 1; int menu_1_3(subjectdb *P) /選課情況subjectdb *q=P->Next;char N2
46、0;system("cls");cout<<"nntttt選課情況操作"<<endl;if(q!=NULL)cout<<"nnntt所有選課情況如下:n"<<endl;cout<<"nttt課程名稱tt選課人數n"<<endl; elsecerr<<"nnntt對不起,暫時沒有課程!請按任意鍵繼續."<<endl;return 1; while(q)q->sub.getkname(N);cout
47、<<"ttt"<<N<<setw(28-strlen(N)<<q->sub.retactivestudent()<<endl;q = q->Next ; cout<<"ntt請按任意鍵繼續."<<endl;return 1; int menu_1_4(studentdb *X,subjectdb *P) /退出系統menu_2_9(X,P);tuichu();return 0; /管理端功能函數int menu_2_1(studentdb *P) /增加學生c
48、har N20;system("cls");cout<<"nntttt增加學生操作n"<<endl;cout<<"nntt請輸入學生姓名:"cin>>N;cout<<endl<<"tt增加學生操作成功,按任意鍵繼續"<<endl;studentdb *newnode = new studentdb;newnode->Next = P->Next ;newnode->stu.readname(N);P->Nex
49、t = newnode ;return 1; int menu_2_2(subjectdb *P) /增加課程float k;char N20,M20;system("cls");cout<<"nntttt增加課程操作n"<<endl;cout<<"nntt 請輸入課程名稱:"cin>>N;cout<<endl;subjectdb *q = P->Next;while(q)q->sub.getkname(M);if(strcmp(N,M)=0)cout<&l
50、t;"ntt此課程已經存在,按任意鍵繼續"<<endl;return 1; q = q->Next; cout<<"tt輸入此課程的學分:"cin>>k;cout<<"ntt增加課程操作成功,按任意鍵繼續"<<endl;subjectdb *newnode = new subjectdb;newnode->Next = P->Next ;newnode->sub.setkname(N);newnode->sub.getcredit(k);P-&g
51、t;Next = newnode ;return 1; int menu_2_3(studentdb *P) /刪除學生system("cls");cout<<"nntttt刪除學生操作"<<endl;menu_2_7(P);studentdb *q = P->Next;if(q=NULL)return 1;int i;char N20,M20;cout<<"nt請輸入要刪除的學生姓名:"cin>>N;i=0;while(q)q->stu.getname(M);if(strcmp(N,M)=0)i+;q = q-&
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯系上傳者。文件的所有權益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網頁內容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
- 4. 未經權益所有人同意不得將文件中的內容挪作商業或盈利用途。
- 5. 人人文庫網僅提供信息存儲空間,僅對用戶上傳內容的表現方式做保護處理,對用戶上傳分享的文檔內容本身不做任何修改或編輯,并不能對任何下載內容負責。
- 6. 下載文件中如有侵權或不適當內容,請與我們聯系,我們立即糾正。
- 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 2024年鎮江市高等專科學校輔導員考試真題
- 2024年甘肅隴南民康骨科醫院招聘考試真題
- 2025年二手交易電商平臺信用體系建設與信用評價體系創新報告
- 2025年二手電商信用體系與消費者信任度提升策略報告
- 易清潔家具合成革材料行業深度調研及發展項目商業計劃書
- 互動媒體設計行業跨境出海項目商業計劃書
- 2025年二手電商平臺信用評價與平臺風險管理研究報告
- 單位換算平方題目及答案
- 代數競賽題目及答案
- 大學黑洞的題目及答案
- 2025年繼續教育公需課必修課考試題庫附含參考答案
- 【MOOC】國際商務-暨南大學 中國大學慕課MOOC答案
- 【MOOC】大學物理-力學、電磁學-重慶大學 中國大學慕課MOOC答案
- 2024中考英語1500詞匯默寫匯總表練習(含答案)
- 年產8萬噸硫酸車間干吸工段工藝的設計盧苗
- 中國物流與采購聯合會采購與供應鏈管理專業委員會簡介
- 5人防測量溫州市綜合測繪成果報告書(范本)
- 國家開放大學電大專科《憲法學》2024期末試題及答案
- 死亡證明(模板)
- 申根簽證在職證明模板中英雙語
- (完整word版)A4紅色稿紙模板.doc
評論
0/150
提交評論