




版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
1、精選優(yōu)質(zhì)文檔-傾情為你奉上 實(shí)驗(yàn)題目:學(xué)籍管理系統(tǒng)一、實(shí)驗(yàn)?zāi)康?綜合應(yīng)用所學(xué)的C語(yǔ)言程序設(shè)計(jì)知識(shí),自行設(shè)計(jì)并實(shí)現(xiàn)一個(gè)較為完整的小型管理信息系統(tǒng)。通過系統(tǒng)分析、系統(tǒng)設(shè)計(jì)、編程實(shí)現(xiàn),寫實(shí)驗(yàn)報(bào)告等環(huán)節(jié),初步掌握軟件系統(tǒng)的設(shè)計(jì)方法和步驟,提高靈活運(yùn)用程序語(yǔ)言進(jìn)行軟件開發(fā)的技能,提高程序設(shè)計(jì)水平和分析問題、解決問題的能力。二、實(shí)驗(yàn)內(nèi)容 1):熟悉C語(yǔ)言的開發(fā)環(huán)境,按照給定的上機(jī)步驟練習(xí)完成; 2):熟悉C程序的編輯,編譯,鏈接和運(yùn)行的過程。3):編譯一個(gè)應(yīng)用系統(tǒng)程序,形成一個(gè)軟件系統(tǒng)。三、詳細(xì)設(shè)計(jì)及運(yùn)行結(jié)果1、算法設(shè)計(jì)學(xué)籍管理系統(tǒng)程序采用了結(jié)構(gòu)化程序設(shè)計(jì)的思想,將程序分解成許多模塊,再由主函數(shù)調(diào)用這些模
2、塊,實(shí)現(xiàn)不同的功能。1、學(xué)生信息結(jié)構(gòu)體:儲(chǔ)存學(xué)生信息。2、主菜單模塊:通過利用輸出函數(shù)顯示輸出主菜單信息。3、提示錯(cuò)誤信息模塊:通過利用輸出函數(shù)輸出提示錯(cuò)誤信息。4、提示沒有找到模塊:通過利用輸出函數(shù)輸出提示沒有找到該學(xué)生。5、輸出中文、英文模塊:通過利用輸出函數(shù)輸出中文提示及學(xué)生數(shù)據(jù)。6、定位模塊:定位連表中符要求合的接點(diǎn),并返回該指針。7、增加學(xué)生信息模塊:通過指針的不斷后移逐個(gè)接受學(xué)生信息并將學(xué)生信息付給相應(yīng)變量。8、查詢學(xué)生信息模塊:根據(jù)用戶選擇按學(xué)號(hào)或按姓名查詢,分別按學(xué)號(hào)或姓名逐個(gè)比較輸入的數(shù)據(jù)與結(jié)構(gòu)體中的數(shù)據(jù),有匹配的則輸出,沒有則提示沒有找到。9、刪除信息模塊:根據(jù)用戶選擇按學(xué)
3、號(hào)或按姓名刪除,分別比對(duì)輸入數(shù)據(jù)和結(jié)構(gòu)體中的數(shù)據(jù),有匹配的則刪除,沒有則提示無信息可刪。10、修改信息模塊:通過用戶輸入的學(xué)號(hào)找到相應(yīng)學(xué)生,然后逐項(xiàng)修改學(xué)生信息,否則提示無此學(xué)生。11、顯示信息模塊:將學(xué)生信息輸出。12、保存信息模塊:將接受的結(jié)構(gòu)體信息利用指針存入文件中。13、排序模塊:按照學(xué)生的最高分進(jìn)行排序,輸出。14、統(tǒng)計(jì)學(xué)生信息模塊:逐項(xiàng)比較相鄰兩項(xiàng)的成績(jī)信息,得到每項(xiàng)最大值,并輸出統(tǒng)計(jì)結(jié)果。15、主函數(shù):通過調(diào)用各模塊來實(shí)現(xiàn)學(xué)生信息的管理。2、模塊圖設(shè)計(jì)總分主函數(shù)增加學(xué)生信息刪除學(xué)生信息查詢學(xué)生信息修改學(xué)生信息顯示學(xué)生信息保存學(xué)生信息學(xué)生總分排序統(tǒng)計(jì)最高分按學(xué)號(hào)刪除按總分排序按學(xué)號(hào)
4、查詢按姓名刪除按英語(yǔ)成績(jī)排序按C語(yǔ)言成績(jī)排序按數(shù)學(xué)成績(jī)排序按平均分排序按姓名查詢總分3、流程圖設(shè)計(jì)1、主函數(shù)文件是否能打開提示文件已打開,正在導(dǎo)入提示文件不能打開能不能將文件內(nèi)容放入節(jié)點(diǎn)中關(guān)閉文件輸出菜單,請(qǐng)用戶選擇Choice1增加學(xué)生信息刪除學(xué)生信息查詢學(xué)生信息修改學(xué)生信息保存學(xué)生信息統(tǒng)計(jì)最高分按總分排名01234567按最高分打印8返回2、增加學(xué)生信息模塊:輸入信息提示學(xué)生已存在是否存在(Y/N)NY給相應(yīng)變量返回3刪除學(xué)生信息文件是否為空輸出提示:1、按學(xué)號(hào)2、按姓名否是沒有資料choice12提示輸入學(xué)號(hào)提示輸入姓名接收輸入學(xué)號(hào)接收輸入姓名是否找到是刪除該生信息否有提示沒有找到返回4
5、.查詢學(xué)生信息文件是否為空輸出提示:1、按學(xué)號(hào)2、按姓名否是提示無資料可查choice12提示輸入學(xué)號(hào)提示輸入姓名接收輸入學(xué)號(hào)接收輸入姓名是否找到是輸出查詢結(jié)果否有提示沒有找到返回4、修改學(xué)生信息文件中是否有資料是否提示輸入要修改的學(xué)號(hào)是否找到否是接收輸入的學(xué)號(hào)寫入新數(shù)據(jù)并給相應(yīng)變量提示資料已修改完畢提示無資料可修改提示沒有找到返回6、顯示學(xué)生信息文件是否能打開依次顯示學(xué)生信息是否提示無資料可查返回7、保存學(xué)生信息文件是否能打開是否提示文件打開錯(cuò)誤將輸入內(nèi)容存入文件提示保存完成返回8.按總分排序資料知否存在提示無資料查否是依次比較總分得出最大值輸出比較結(jié)果返回9、統(tǒng)計(jì)學(xué)生最高分資料知否存在提示
6、無資料可統(tǒng)計(jì)否是依次比較總分得出最大值依次比較平均分得出最大值依次比較數(shù)學(xué)成績(jī)得出最大值依次比較英語(yǔ)成績(jī)得出最大值依次比較C語(yǔ)言成績(jī)得出最大值輸出比較結(jié)果返回 四、調(diào)試情況,設(shè)計(jì)技巧及體會(huì)1、本系統(tǒng)在VC6下編譯調(diào)試通過,可順利運(yùn)行,各項(xiàng)功能達(dá)到設(shè)計(jì)要求 本系統(tǒng)采用分模塊調(diào)試的方法進(jìn)行編譯,即完成一個(gè)函數(shù)功能模塊就編譯一個(gè)功能模塊,最后再進(jìn)行整體編譯并生成可執(zhí)行文件honest.exe。在調(diào)試過程中主要碰到以下問題:(1)輸入函數(shù)中的取地址符即“&”不能正確使用,導(dǎo)致程序在輸入數(shù)據(jù)時(shí)發(fā)生錯(cuò)誤。(2)在比較兩個(gè)字符串時(shí)不能正確使用“strcmp”函數(shù),導(dǎo)致比較結(jié)果不能輸出。(3)在應(yīng)用指
7、針時(shí)沒有注意頭結(jié)點(diǎn)中的數(shù)據(jù)域中是不存放數(shù)據(jù),導(dǎo)致指針指向錯(cuò)誤。 2、在這次課程設(shè)計(jì)中我充分體會(huì)到C語(yǔ)言作為一門編程的基本語(yǔ)言它的精妙。通過這次課程設(shè)計(jì)使我了解到我有很多的不足,在程序調(diào)試的時(shí)候常常會(huì)因?yàn)閹讉€(gè)錯(cuò)誤而弄得心煩,這說明我對(duì)知識(shí)的掌握還不夠牢,在程序設(shè)計(jì)的過程中也暴露出了我的諸多弊端,借這次課程設(shè)計(jì)的機(jī)會(huì)我會(huì)認(rèn)真的加以改正,多多看書 多去圖書館學(xué)習(xí),同時(shí)應(yīng)該增強(qiáng)自己的實(shí)踐能力,為以后的學(xué)習(xí)打下堅(jiān)實(shí)的基礎(chǔ)。五、源程序清單(略,詳見電子版實(shí)驗(yàn)報(bào)告)#include "stdio.h" #include "conio.h"#include "
8、stdlib.h" /*包含后面使用的exit等函數(shù)*/#include "string.h"/*包含號(hào)面使用的strcmp等函數(shù)*/ int havesave=0; /*全集變量*/ struct student char num10;/* 學(xué)號(hào) */ char name18; char sex3; int clanguage; int math; int english; int totle; int average; ; typedef struct node /*使用typedef語(yǔ)句,簡(jiǎn)化程序后續(xù)聲明定義的鍵盤輸入*/ struct student da
9、ta; struct node *next; Node,*Link; void menu() printf("n");printf(" n");printf(" n");printf(" n");printf(" n"); printf(" t1添加學(xué)生資料ttttt2刪除學(xué)生資料 n"); printf(" n"); printf(" t3查詢學(xué)生資料ttttt4修改學(xué)生資料 n"); printf(" n");
10、printf(" t5保存學(xué)生資料ttttt6統(tǒng)計(jì)最高分 n"); printf(" n"); printf(" t7按總分排名ttttt8打印學(xué)生成績(jī) n");printf(" n"); printf(" t9幫助信息ttttt0退出系統(tǒng) n");printf(" n");printf(" n"); printf(" n");printf(" n"); printf("n");printf(&q
11、uot;n"); void print_san() printf("-n"); void Wrong() printf("n=>提示:輸入錯(cuò)誤!n"); void Nofind() printf("n=>提示:沒有找到該學(xué)生!n"); void printchinese() /* 本函數(shù)用于輸出中文 */ printf("t 學(xué)號(hào)t 姓名 性別 英語(yǔ)成績(jī) 數(shù)學(xué)成績(jī) C語(yǔ)言成績(jī) 總分 平均分n"); void printenglish(Node *p)/* 本函數(shù)用于輸出英文 */ printf
12、("t%-9s%st%st%dt%dt%dt %dt %dn",p->data.num,p->,p->data.sex,p->data.english,p->data.math,p->data.clanguage,p->data.totle,p->data.average); void printhelp()printf("該程序?yàn)橛肅語(yǔ)言編寫的學(xué)生管理程序,第一次進(jìn)入該程序需要?jiǎng)?chuàng)建學(xué)生數(shù)據(jù)n");printf("以后進(jìn)入可根據(jù)菜單欄顯示實(shí)現(xiàn)各項(xiàng)功能,系統(tǒng)默認(rèn)保存文件位置為D:/
13、學(xué)生管理n");printf("按任意鍵返回");printf("n");getch();Node* Locate(Link l,char findmess,char nameornum) /* 該函數(shù)用于定位鏈表中符合要求的結(jié)點(diǎn),并返回該指針 */ Node *r; if(strcmp(nameornum,"num")=0) /* 按學(xué)號(hào)查詢 */ r=l->next; while(r!=NULL) if(strcmp(r->data.num,findmess)=0) return r; r=r->nex
14、t; else if(strcmp(nameornum,"name")=0) /* 按姓名查詢 */ r=l->next; while(r!=NULL) if(strcmp(r->,findmess)=0) return r; r=r->next; return 0; void Add(Link l) /* 增加學(xué)生 */ Node *p,*r,*s; char num10; r=l; s=l->next; while(r->next!=NULL) r=r->next; /* 將指針置于最末尾 */ while(1) p
15、rintf("請(qǐng)你輸入學(xué)號(hào)(以'0'返回上一級(jí)菜單:)"); scanf("%s",num); if(strcmp(num,"0")=0) break; while(s) if(strcmp(s->data.num,num)=0) printf("=>提示:學(xué)號(hào)為'%s'的學(xué)生已經(jīng)存在,若要修改請(qǐng)你選擇'4 修改'!n",num); print_san(); printchinese(); printenglish(s); print_san(); pri
16、ntf("n"); return; s=s->next; p=(Node *)malloc(sizeof(Node); strcpy(p->data.num,num); printf("請(qǐng)你輸入姓名:"); scanf("%s",p->); getchar(); printf("請(qǐng)你輸入性別:"); scanf("%s",p->data.sex); getchar(); printf("請(qǐng)你輸入c語(yǔ)言成績(jī):"); scanf(&quo
17、t;%d",&p->data.clanguage); getchar(); printf("請(qǐng)你輸入數(shù)學(xué)成績(jī):"); scanf("%d",&p->data.math); getchar(); printf("請(qǐng)你輸入英語(yǔ)成績(jī):"); scanf("%d",&p->data.english); getchar(); p->data.totle=p->data.english+p->data.clanguage+p->data.math; p
18、->data.average=p->data.totle / 3; /* 信息輸入已經(jīng)完成 */ p->next=NULL; r->next=p; r=p; havesave=1; void Seek(Link l) /* 查詢學(xué)生 */ int sel; char findmess20; Node *p; if(!l->next) printf("n=>提示:沒有資料可以查詢!n"); return; printf("n=>1按學(xué)號(hào)查找n=>2按姓名查找n"); scanf("%d",
19、&sel); if(sel=1)/* 學(xué)號(hào) */ printf("請(qǐng)你輸入要查找的學(xué)號(hào):"); scanf("%s",findmess); p=Locate(l,findmess,"num"); if(p) printf("tttt查找結(jié)果n"); print_san();printf("n"); printchinese(); printenglish(p);printf("n"); print_san();printf("按任意鍵返回");ge
20、tch(); else Nofind(); else if(sel=2) /* 姓名 */ printf("請(qǐng)您輸入要查找的姓名:"); scanf("%s",findmess); p=Locate(l,findmess,"name"); if(p) printf("tttt查找結(jié)果n"); print_san();printf("n"); printchinese(); printenglish(p);printf("n"); print_san();printf(&quo
21、t;按任意鍵返回"); getch(); else Nofind(); else Wrong(); void Del(Link l) /* 刪除 */ int sel; Node *p,*r; char findmess20; if(!l->next) printf("n=>提示:沒有資料可以刪除!n"); return; printf("n=>1按學(xué)號(hào)刪除n=>2按姓名刪除n"); scanf("%d",&sel); if(sel=1) printf("請(qǐng)您輸入要?jiǎng)h除的學(xué)號(hào):&qu
22、ot;); scanf("%s",findmess); p=Locate(l,findmess,"num"); if(p) r=l; while(r->next!=p) r=r->next; r->next=p->next; free(p); printf("n=>提示:該學(xué)生已經(jīng)成功刪除!n"); havesave=1; else Nofind(); else if(sel=2) printf("請(qǐng)你輸入要?jiǎng)h除的姓名:"); scanf("%s",findmess
23、); p=Locate(l,findmess,"name"); if(p) r=l; while(r->next!=p) r=r->next; r->next=p->next; free(p); printf("n=>提示:該學(xué)生已經(jīng)成功刪除!n"); havesave=1; else Nofind(); else Wrong(); void Modify(Link l) Node *p; char findmess20; if(!l->next) printf("n=>提示:沒有資料可以修改!n&qu
24、ot;); return; printf("請(qǐng)您輸入要修改的學(xué)生學(xué)號(hào):"); scanf("%s",findmess); p=Locate(l,findmess,"num"); if(p) printf("請(qǐng)你輸入新學(xué)號(hào)(原來是%s):",p->data.num); scanf("%s",p->data.num); printf("請(qǐng)你輸入新姓名(原來是%s):",p->); scanf("%s",p->data.
25、name); getchar(); printf("請(qǐng)你輸入新性別(原來是%s):",p->data.sex); scanf("%s",p->data.sex); printf("請(qǐng)你輸入新的c語(yǔ)言成績(jī)(原來是%d分):",p->data.clanguage); scanf("%d",&p->data.clanguage); getchar(); printf("請(qǐng)你輸入新的數(shù)學(xué)成績(jī)(原來是%d分):",p->data.math); getchar(); s
26、canf("%d",&p->data.math); printf("請(qǐng)你輸入新的英語(yǔ)成績(jī)(原來是%d分):",p->data.english); scanf("%d",&p->data.english); p->data.totle=p->data.english+p->data.clanguage+p->data.math; p->data.average=p->data.totle/3; printf("n=>提示:資料修改成功!n")
27、; havesave=1; else Nofind(); void Scoreone(Link l) Node *pm,*pe,*pc,*pt,*pa; /* 用于指向分?jǐn)?shù)最高的接點(diǎn) */ Node *r=l->next; if(!r) printf("n=>提示:沒有資料可以統(tǒng)計(jì)!n"); return ; pm=pe=pc=pt=pa=r; while(r!=NULL) if(r->data.clanguage>=pc->data.clanguage) pc=r; if(r->data.math>=pm->data.mat
28、h) pm=r; if(r->data.english>=pe->data.english) pe=r; if(r->data.totle>=pt->data.totle) pt=r; if(r->data.average>=pa->data.average) pa=r; r=r->next; printf("-統(tǒng)計(jì)結(jié)果-n"); printf("總分最高者:t%st%st %d分n",pt->data.num,pt->,pt->data.totle); pr
29、intf("平均分最高者:t%st%st %d分n",pa->data.num,pa->,pa->data.average); printf("英語(yǔ)最高者:t%st%st %d分n",pe->data.num,pe->,pe->data.english); printf("數(shù)學(xué)最高者:t%st%st %d分n",pm->data.num,pm->,pm->data.math); printf("c語(yǔ)言最高者:t%st%
30、st %d分n",pc->data.num,pc->,pc->data.clanguage); print_san(); printf("按任意鍵返回n");getch(); void Scoretow(Link l) Link ll; Node *p,*rr,*s; ll=(Link)malloc(sizeof(Node); /* 用于做新的連表 */ ll->next=NULL; if(l->next=NULL) printf("n=>提示:沒有資料可以排序!n"); return ;
31、p=l->next; while(p) s=(Node*)malloc(sizeof(Node); /* 新建接點(diǎn)用于保存信息 */ s->data=p->data; s->next=NULL; rr=ll; while(rr->next!=NULL && rr->next->data.totle>=p->data.totle) rr=rr->next; if(rr->next=NULL) rr->next=s; else s->next=rr->next; rr->next=s; p=p
32、->next; free(l); l->next=ll->next;printf("n=>提示:排序已經(jīng)完成!n"); void printscore(Link l)/打印成績(jī)信息 Node *p; p=l; if(l!=NULL) printf("n全部成績(jī)?yōu)?nn"); printf("學(xué)號(hào)t姓名t數(shù)學(xué)t英語(yǔ)tC語(yǔ)言t平均分t總分nn");p=p->next; do printf("%st%st%dt%dt%dt%dt%dn", p->data.num, p->data
33、.name,p->data.math,p->data.english,p->data.clanguage,p->data.average,p->data.totle); p=p->next; while(p!=NULL); printf("n");printf("按任意鍵返回");printf("n");getch(); else printf("n目前數(shù)據(jù)為空,還沒有任何信息,請(qǐng)先創(chuàng)建成績(jī)信息!nn");void Save(Link l) FILE* fp; Node *p;
34、int flag=1,count=0; fp=fopen("D:學(xué)生管理","wb"); if(fp=NULL) printf("n=>提示:重新打開文件時(shí)發(fā)生錯(cuò)誤!n"); exit(1); p=l->next; while(p) if(fwrite(p,sizeof(Node),1,fp)=1) p=p->next; count+; else flag=0; break; if(flag) printf("n=>提示:文件保存成功.(有%d條記錄已經(jīng)保存.)n",count); have
35、save=0; fclose(fp); void main() Link l;/* 連表 */ FILE *fp; /* 文件指針 */ int sel; char c; char chji; int count=0; Node *p,*r; printf("tttt學(xué)生成績(jī)管理系統(tǒng)ntttt-西安郵電學(xué)院 微電子0901 李歡(17號(hào))n"); l=(Node*)malloc(sizeof(Node); l->next=NULL; r=l; fp=fopen("D:學(xué)生管理","rb"); if(fp=NULL) printf("n=>提示:文件還不存在,
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝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ù)網(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ì)自己和他人造成任何形式的傷害或損失。
最新文檔
- Unit 3 Wrapping Up the Topic-Project 教學(xué)設(shè)計(jì) 2024-2025學(xué)年仁愛科普版英語(yǔ)七年級(jí)上冊(cè)
- 2糖到哪里去了(教學(xué)設(shè)計(jì))-2023-2024學(xué)年一年級(jí)下冊(cè)科學(xué)冀人版
- 南方科技大學(xué)《環(huán)境資源法》2023-2024學(xué)年第二學(xué)期期末試卷
- 《7 校園綠化設(shè)計(jì)》(教學(xué)設(shè)計(jì))-2023-2024學(xué)年六年級(jí)下冊(cè)綜合實(shí)踐活動(dòng)粵教版
- 冀中職業(yè)學(xué)院《書法藝術(shù)與欣賞》2023-2024學(xué)年第二學(xué)期期末試卷
- 蘇州經(jīng)貿(mào)職業(yè)技術(shù)學(xué)院《安裝工程計(jì)量與計(jì)價(jià)》2023-2024學(xué)年第二學(xué)期期末試卷
- 教科版高中信息技術(shù)必修教學(xué)設(shè)計(jì)-5.1 音頻信息的采集與加工
- 四川化工職業(yè)技術(shù)學(xué)院《信號(hào)分析與處理C》2023-2024學(xué)年第二學(xué)期期末試卷
- 濮陽(yáng)醫(yī)學(xué)高等??茖W(xué)校《微波技術(shù)基礎(chǔ)》2023-2024學(xué)年第二學(xué)期期末試卷
- 四川外國(guó)語(yǔ)大學(xué)成都學(xué)院《兒科護(hù)理學(xué)(實(shí)驗(yàn))》2023-2024學(xué)年第二學(xué)期期末試卷
- 血液凈化治療臨床應(yīng)用進(jìn)展
- 單位定點(diǎn)洗車協(xié)議書
- 留置導(dǎo)尿法操作評(píng)分標(biāo)準(zhǔn)
- CJJ-T67-2015風(fēng)景園林制圖標(biāo)準(zhǔn)
- 《氨制冷企業(yè)安全規(guī)范》AQ7015-2018
- 醫(yī)院門診醫(yī)生績(jī)效考核標(biāo)準(zhǔn)及評(píng)分細(xì)則
- 遼寧省沈陽(yáng)市名校2024年中考物理模擬試題含解析
- 歷史類常識(shí)考試100題及完整答案
- 醫(yī)院納入定點(diǎn)后使用醫(yī)療保障基金的預(yù)測(cè)性分析報(bào)告
- 媒介素養(yǎng)概論 課件 劉勇 第0-4章 緒論、媒介素養(yǎng)-新聞評(píng)論
- 智能割草機(jī)器人的概述外文翻譯
評(píng)論
0/150
提交評(píng)論