數(shù)據(jù)結(jié)構(gòu)課設(shè)——文章編輯_第1頁(yè)
數(shù)據(jù)結(jié)構(gòu)課設(shè)——文章編輯_第2頁(yè)
數(shù)據(jù)結(jié)構(gòu)課設(shè)——文章編輯_第3頁(yè)
數(shù)據(jù)結(jié)構(gòu)課設(shè)——文章編輯_第4頁(yè)
數(shù)據(jù)結(jié)構(gòu)課設(shè)——文章編輯_第5頁(yè)
已閱讀5頁(yè),還剩19頁(yè)未讀 繼續(xù)免費(fèi)閱讀

下載本文檔

版權(quán)說(shuō)明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)

文檔簡(jiǎn)介

1、課程設(shè)計(jì)報(bào)告課程設(shè)計(jì)題目:文章編輯 專 業(yè):信息工程班 級(jí): 1720601學(xué)生姓名 : 指導(dǎo)教師 : 、實(shí)驗(yàn)?zāi)康募耙螅喝蝿?wù):輸入一頁(yè)文字,程序可以統(tǒng)計(jì)出文字、數(shù)字、空格的個(gè)數(shù)。靜態(tài)存儲(chǔ)一頁(yè)文章,每行最多不超過(guò)80個(gè)字符,共N行; 要求:(1)分別統(tǒng)計(jì)出其中英文字母數(shù)和空格數(shù)及整篇文章總字?jǐn)?shù); (2)統(tǒng)計(jì)某一字符串在文章中出現(xiàn)的次數(shù),并輸出該次數(shù); (3)刪除某一子串,并將后面的字符前移。存儲(chǔ)結(jié)構(gòu)使用線性表,分別用幾個(gè)子函數(shù)實(shí)現(xiàn)相應(yīng)的功能;輸入數(shù)據(jù)的形式和范圍:可以輸入大寫、小寫的英文字母、任何數(shù)字及標(biāo)點(diǎn)符號(hào)。 輸出形式:(1)分行輸出用戶輸入的各行字符; (2)分4行輸出"全部字

2、母數(shù)"、"數(shù)字個(gè)數(shù)"、"空格個(gè)數(shù)"、"文章總字?jǐn)?shù)"(3) 輸出刪除某一字符串后的文章;實(shí)驗(yàn)時(shí)間、地點(diǎn): 2013.6.16至6.20于軟件樓301一、概要設(shè)計(jì)(實(shí)驗(yàn)思路)1.問(wèn)題分析本程序是對(duì)一段英文文章的內(nèi)容進(jìn)行處理,存儲(chǔ)方式采用鏈?zhǔn)酱鎯?chǔ)。對(duì)于文本的輸入,采用頭插法將文本信息存儲(chǔ)到鏈表已申請(qǐng)好的存儲(chǔ)空間中,在此部分設(shè)計(jì)中最大的問(wèn)題在于輸入文章過(guò)程中輸入的字符數(shù)大于80時(shí)如何換行;對(duì)于文本內(nèi)容的統(tǒng)計(jì),使用循環(huán)對(duì)已存儲(chǔ)的文章進(jìn)行匹配,字母數(shù)、空格數(shù)、數(shù)字?jǐn)?shù)直接通過(guò)比較即可得到;對(duì)于文本內(nèi)容的處理,查找部分仍是使用循環(huán)對(duì)已存儲(chǔ)的

3、文章進(jìn)行匹配,判斷需要查找的字符或者字符串是否與文章中某部分內(nèi)容相同,如果存在相同的記錄相同的個(gè)數(shù)及位置并輸出個(gè)數(shù)及位置。刪除部分先使用程序的查找功能對(duì)文章中需要?jiǎng)h除的字符或者字符串進(jìn)行查找,然后對(duì)其進(jìn)行刪除。2. 數(shù)據(jù)結(jié)構(gòu)選擇本程序是對(duì)輸入的文字進(jìn)行操作,故使用的數(shù)據(jù)結(jié)構(gòu)為單鏈表操作。根據(jù)第一部分的問(wèn)題分析有該鏈表操作有3部分:另有全局變量 *head,作為文章的頭指針。創(chuàng)建結(jié)構(gòu)體: typedef struct list char data80;/記錄一行字符int length;/記錄一行字符長(zhǎng)度 struct _list *next;/后繼指針struct _list *pre;/前趨

4、指針int row;/記錄整篇文章的行數(shù)LinkList;在文章內(nèi)容創(chuàng)建部分中使用線性表的鏈?zhǔn)酱鎯?chǔ),并使用全局變量對(duì)文本的各種信息進(jìn)行存儲(chǔ);文章的讀取、內(nèi)容統(tǒng)計(jì)、刪除、查找都采用鏈表操作完成。3.流程圖(1)主框架:(2)文章內(nèi)容統(tǒng)計(jì)子菜單(3) 文章內(nèi)容處理子菜單文章內(nèi)容處理子菜單SearchWord()函數(shù)實(shí)現(xiàn)查找DeleteWord()函數(shù)內(nèi)容刪除Printword()顯示當(dāng)前內(nèi)容返回主菜單退出程序(4)使用函數(shù)列表及關(guān)系圖函數(shù)名:1、CreatWord() 文本輸入函數(shù),對(duì)文本的內(nèi)容進(jìn)行輸入2、PrintWord() 當(dāng)前文本內(nèi)容輸出函數(shù),將當(dāng)前存儲(chǔ)在鏈表中的文本內(nèi)容輸出5、Count

5、Word() 文章內(nèi)容統(tǒng)計(jì)函數(shù),對(duì)存儲(chǔ)在鏈表中文本內(nèi)容進(jìn)行統(tǒng)計(jì)6、SearchWord() 文章內(nèi)容查找函數(shù)7、DeleteWord() 文章內(nèi)容刪除函數(shù)8、Bmenu() 文本內(nèi)容處理菜單函數(shù)9、AboutWord() 顯示作者信息的函數(shù)10、menu() 主菜單函數(shù)11、main() 主函數(shù)關(guān)系圖:二、詳細(xì)設(shè)計(jì)(實(shí)驗(yàn)過(guò)程)1、數(shù)據(jù)結(jié)構(gòu)定義typedef struct list char data80;/*記錄一行字符*/ int length;/*記錄一行字符長(zhǎng)度*/ struct list *next;/*后繼指針*/ struct list *pre;/*前趨指針*/ int row;

6、/*記錄整篇文章的行數(shù)*/LinkList;2、全局變量定義LinkList *head;/*定義全局變量*head,文章首行頭指針*/int NUM,C,N;/*定義全局變量,Num用來(lái)記錄行號(hào),C用來(lái)記錄子串在主串中出現(xiàn)的總次數(shù)*/3、函數(shù)說(shuō)明(1)CreatWord() 文本創(chuàng)建函數(shù)LinkList *CreatWord() LinkList *temp; char ch; int i,j; head->next=(LinkList *)malloc(sizeof(LinkList); / head->pre=NULL; temp=head->next; / temp-

7、>pre=NULL; temp->length=0; for(i=0;i<80;i+) temp->datai='0'printf("tt*n");printf("tt* 創(chuàng)建文本 *n");printf("tt*n");printf("tt請(qǐng)輸入文章(輸入#號(hào)結(jié)束):nn");for(j=0;j<Link_Size;j+)for(i=0;i<80;i+)ch=getchar();temp->datai=ch;temp->length+;if(ch=&

8、#39;#')NUM=j;break;if(ch='#')temp->length=i;temp->next=NULL;break;temp->next=(LinkList *)malloc(sizeof(LinkList) ;temp->next->pre=temp;temp=temp->next;for(i=0;i<80;i+)temp->datai='0'temp->row=NUM+1;system("cls");return (temp);說(shuō)明:a、 定義LinkList指

9、針變量*temp: LinkList *temp;b、 定義文本輸入變量ch,記錄文本行數(shù)變量j,記錄每行字符數(shù)變量i;c、 申請(qǐng)動(dòng)態(tài)存儲(chǔ)空間:head->next=(LinkList *)malloc(sizeof(LinkList);d、 首行頭指針的前驅(qū)指針為空:head->pre=NULL;首行指針: temp=head->next;首行指針的前驅(qū)指針也為空: temp->pre=NULL;定義沒(méi)輸入字符時(shí)文章長(zhǎng)度為0: temp->length=0;初始化為字符串結(jié)束標(biāo)志,防止出現(xiàn)亂碼: for(i=0;i<80;i+) temp->data

10、i='0'e、 利用循環(huán)進(jìn)行文本輸入for(j=0;j<LINK_INIT_SIZE;j+)/ 控制一頁(yè) for(i=0;i<80;i+) /控制一行 ch=getchar(); /接收輸入字符 temp->datai=ch; /給temp指向的行賦值···· temp->length+;/行中字符長(zhǎng)度加1 if(ch='#') NUM=j; break; /文章結(jié)束時(shí),Num來(lái)記錄整個(gè)文章的行數(shù) 在字符輸入的過(guò)程中,如果在單行輸入的字符超過(guò)了80個(gè)字符,則需要以下操作 :輸入字符數(shù)大于80,重新分

11、配空間建立下一行:temp->next=(LinkList *)malloc(sizeof(LinkList) ;給temp的前驅(qū)指針賦值:temp->next->pre=temp;temp指向當(dāng)前行: temp=temp->next;將下一行初始化為字符串結(jié)束標(biāo)志,防止出現(xiàn)亂碼:for(i=0;i<80;i+) temp->datai='0'記錄整個(gè)文章的行數(shù):temp->row=NUM+1;返回指向最后一行指針:return temp;文本輸入部分到此結(jié)束。(2)PrintWord() 文章顯示函數(shù)void PrintWord()i

12、nt i,j;LinkList *p;p=head->next;system("cls");printf("n");printf("tt*n");printf("tt* 文本顯示 *n");printf("tt*n");printf("n當(dāng)前文章的內(nèi)容是:n");for(j=0;j<=NUM&&p!=NULL;j+)for(i=0;(i<80)&&(p->datai)!='#'i+)printf(&quo

13、t;%c",p->datai);p=p->next;說(shuō)明:a、 定義文本行數(shù)變量j,每行字符數(shù)i:int i,j;b、 定義指針變量:LinkList *p;c、 將指針p指向鏈表表頭:p=head->next;d、 利用循環(huán)輸出鏈表中信息: for(j=0;j<=NUM&&p!=NULL;j+)=for(i=0;(i<80)&&(p->datai)!='#'i+)=printf("%c",p->datai);p=p->next; 文本顯示部分到此結(jié)束。(3)Count

14、Word() 文章內(nèi)容統(tǒng)計(jì)函數(shù)void CountWord()LinkList *temp;char ch;int i,j,t;int WORD=0,word=0,space=0,num=0,sum=0;temp=head->next;for(j=0;j<=NUM;j+)for(i=0;(i<80)&&(temp->datai)!='#'i+)ch=temp->datai;if(ch>='A')&&(ch<='Z')WORD+;else if(ch>='a&#

15、39;)&&(ch<='z')word+;else if(ch>='0')&&(ch<='9')num+;else if(ch=' ')space+;sum=WORD+word+num;while(1)printf("n");printf("n");printf("n");printf("tt*n");printf("tt* 文章內(nèi)容統(tǒng)計(jì)子菜單 *n");printf("t

16、t*n"); printf("tt* 文章中 字母 的個(gè)數(shù): %d n",WORD+word);printf("tt* 文章中 數(shù)字 的個(gè)數(shù): %d n",num);printf("tt* 文章中 空格 的個(gè)數(shù): %d n",space);printf("tt* 文章中 所有字 的個(gè)數(shù): %d n",sum);printf("tt* 1、退出返回主菜單 *n");printf("tt* 2、直接退出本系統(tǒng) *n");printf("tt*n");

17、printf("tt請(qǐng)選擇:");scanf("%d",&t);if(t=1)system("cls");break;else if(t=2)exit(0);else printf("tt 對(duì)不起,無(wú)此功能!請(qǐng)回車重新選擇!.n");printf("tt");fflush(stdin);getchar();說(shuō)明:a、 定義指針變量temp:LinkList *temp;b、 定義記錄文本行數(shù)變量j,每行字符數(shù)i;c、 定義記錄文本大寫字母數(shù)、小寫字母數(shù)、空格數(shù)、數(shù)字?jǐn)?shù)和總字?jǐn)?shù)的變量:in

18、t WORD=0,word=0,space=0,num=0,sum=0;d、 將指針temp指向鏈表表頭:temp=head->next;利用循環(huán)對(duì)鏈表中信息進(jìn)行匹配判斷,將大寫字母數(shù)、小寫字母數(shù)、空格數(shù)、數(shù)字?jǐn)?shù)和總字?jǐn)?shù)統(tǒng)計(jì)出來(lái):for(j=0;j<=NUM;j+)for(i=0;(i<80)&&(temp->datai)!='#'i+)ch=temp->datai;if(ch>='A')&&(ch<='Z')WORD+;else if(ch>='a'

19、)&&(ch<='z')word+;else if(ch>='0')&&(ch<='9')num+;else if(ch=' ')space+;sum=WORD+word+num;e、 本程序?qū)y(tǒng)計(jì)項(xiàng)目設(shè)計(jì)了菜單。菜單的編寫使用 while語(yǔ)句進(jìn)行循環(huán)操作。文本內(nèi)容統(tǒng)計(jì)部分到此結(jié)束。(4)SearchWord() 文章內(nèi)容查找函數(shù)void SearchWord(char *str1,LinkList* temp) char Data20 ; int i,j,k=0,sum=0;in

20、t l=1; temp=head->next; strcpy(Data,str1); for(i=0;i<=NUM;i+) for(j=0;j<80;j+) if(temp->dataj)=Datak) k+; else if(Datak!='0')j=j-k;k=0; if(Datak='0') sum+;j=j-k+1;printf("ttt第%d次出現(xiàn)在第%d行第%d列n",l,i+1,j);l+;k=0;continue; temp=temp->next; printf("nttt字符串總共出現(xiàn)

21、次數(shù)為:%dnn",sum); C=sum;N=i*80+j;說(shuō)明:a、 定義一個(gè)數(shù)組,用來(lái)記錄需要查找的字符內(nèi)容:char Data20;b、 定義定義文本行數(shù)變量j,每行字符數(shù)i,記錄字符出現(xiàn)的次數(shù)變量:int i,j,m=0.,sum=0;c、 對(duì)形參中定義的指針變量進(jìn)行操作,使其指向鏈表表頭:temp=head->next;d、 使用拷貝函數(shù),將形參中str1的值賦給Data:strcpy(Data,str1);e、 利用循環(huán)進(jìn)行查找操作:for(i=0;i<=NUM;i+) /*利用循環(huán)進(jìn)行查找操作*/ for(j=0;j<80;j+) if(temp-&

22、gt;dataj)=Datak) k+;/*將輸入的查找字符與鏈表中信息比較,找到第一個(gè)相同的字符*/ else if(Datak!='0')j=j-k;/*從主串第j-k個(gè)位置重新查找*/k=0; if(Datak='0') sum+;/*此字符出現(xiàn)的次數(shù)加1*/j=j-k+1;/*j記錄下該字符串出現(xiàn)的位置*/printf("ttt第%d次出現(xiàn)在第%d行第%d列n",l,i+1,j);l+;k=0;continue; temp=temp->next;/*指向下一行*/ 文本內(nèi)容查找部分到此結(jié)束。(5)DeleteWord() 文章內(nèi)

23、容刪除函數(shù)void DeleteWord(char *str2) char Data20; LinkList *temp,*term; int i,j,a,k,m,y,num; strcpy(Data,str2); for(y=0;y<C;y+) num=80;k=0,m=0; temp=head; for(i=0;i<=NUM;i+) term=temp; temp=temp->next; for(j=0;j<80;j+) if(temp->dataj)=Datak) k+; else if(Datak!='0') j=j-k;k=0; if(D

24、atak='0') num=j;break; if(num<80) break; for(;i<=NUM;i+) for(;j<80;j+) if(j+1<k) term->data80-k+num=temp->dataj+1; elsetemp->dataj-k+1=temp->dataj+1; term=temp; temp=temp->next; j=0; 說(shuō)明:a、定義一個(gè)數(shù)組用來(lái)存儲(chǔ)需要?jiǎng)h除的字符或者字符串:char Data20;b、定義指針變量:LinkList *temp,*term;c、定義整形變量用來(lái)控制

25、行數(shù)、字符數(shù):int i,j,k,m,y,num;d、使用拷貝函數(shù)講形參中需要?jiǎng)h除的字符或字符串賦值給已定義的數(shù)組:strcpy(Data,str2);f、 使用循環(huán)進(jìn)行刪除操作:for(y=0;y<C;y+) num=80;k=0,m=0; temp=head; for(i=0;i<=NUM;i+)/*使用循環(huán)進(jìn)行刪除操作*/ term=temp; temp=temp->next; for(j=0;j<80;j+) if(temp->dataj)=Datak) k+; else if(Datak!='0') j=j-k;k=0; if(Datak

26、='0') num=j;break; if(num<80) break; /*首先是使用循環(huán)查找到需要?jiǎng)h除字符或者字符串的字符數(shù)以及字符或者字符串的位置,以便于刪除*/for(;i<=NUM;i+) for(;j<80;j+) if(j+1<k) term->data80-k+num=temp->dataj+1;/*刪除的字符串不在最后一行,將下一行的字符(由temp指向)前移到前行*/ elsetemp->dataj-k+1=temp->dataj+1;/*當(dāng)要?jiǎng)h除的字符串在最后一行只要將最后一行的字符前移*/ term=tem

27、p; temp=temp->next;/*在使用循環(huán),從查找到的字符或者字符串開始進(jìn)行刪除,在一行刪除完畢之后,轉(zhuǎn)至下一行進(jìn)行刪除*/ j=0; 文本內(nèi)容刪除部分到此完成。(6)Bmenu() 文章內(nèi)容處理菜單函數(shù)void Bmenu(LinkList *temp) char str120;char str220;int t;do /*利用do while 循環(huán)來(lái)控制主菜單顯示*/ printf("n");printf("ntt*n");printf("tt* 文章內(nèi)容處理子菜單 *n");printf("tt*n&q

28、uot;);printf("tt* 1、查找文章中的字符或者字符串 *n");printf("tt* 2、刪除文章中的字符或者字符串 *n");printf("tt* 3、顯示當(dāng)前文章內(nèi)容 *n");printf("tt* 4、返回主菜單 *n");printf("tt* 5、直接退出系統(tǒng) *n");printf("tt*n");printf("tt 請(qǐng)選擇:");scanf("%d",&t);if(t>5)|(t<

29、1) printf("tt 對(duì)不起,無(wú)此功能!請(qǐng)回車重新選擇!.n");printf("tt");fflush(stdin);getchar();elseswitch(t)case 1: system("cls"); printf("n");printf("ntt*n");printf("tt* 文章內(nèi)容處理子菜單 *n");printf("tt*n");printf("nttt請(qǐng)輸入您需要查找的字符或字符串:");getchar();

30、gets(str1);printf("n");SearchWord(str1,temp);printf("ntt按回車鍵繼續(xù)·····");getchar();getchar();system("cls");break;case 2:system("cls"); printf("n");printf("ntt*n");printf("tt* 文章內(nèi)容處理子菜單 *n");printf("tt*n&

31、quot;);printf("nttt請(qǐng)輸入您需要?jiǎng)h除的字符或字符串:");getchar();gets(str2);printf("n");SearchWord(str2,temp);DeleteWord(str2);printf("ttt刪除 %s 后的文章為:",str2);PrintWord();printf("ntt按回車鍵繼續(xù)·····");getchar();getchar();system("cls");break;case 3:

32、system("cls"); printf("nntt*n");printf("tt* 文章內(nèi)容處理子菜單 *n");printf("tt*n");PrintWord();printf("nntt按回車鍵繼續(xù)·····");getchar();getchar();system("cls");break;if(t=4) system("cls"); break;if(t=5) exit(0); while(1

33、); 說(shuō)明:用do-while 語(yǔ)句來(lái)制作文章內(nèi)容處理菜單,用switch 語(yǔ)句來(lái)選擇實(shí)現(xiàn)功能。(7)AboutWord() 相關(guān)性息void AboutWord()printf("nnnnnnnn"); printf("t*n");printf("t* 本系統(tǒng)由 chevis 制作 部分功能則是仿照其他程序 能力有限 *n");printf("t* 謝謝使用! *n"); printf("t*n");printf("n");(8)menu() 主菜單void menu()i

34、nt t;LinkList *temp;doprintf("n");printf("n");printf("n");printf("tt*n");printf("tt* 簡(jiǎn)單的文章編輯器 *n"); printf("tt*n");printf("tt* 主菜單 *n");printf("tt*n");printf("tt* 1、文章內(nèi)容輸入 *n");printf("tt* 2、顯示當(dāng)前文章內(nèi)容 *n&qu

35、ot;);printf("tt* 3、文章內(nèi)容統(tǒng)計(jì)子菜單 *n");printf("tt* 4、文章內(nèi)容處理子菜單 *n");printf("tt* 5、程序相關(guān) *n");printf("tt* 6、退出文章編輯器 *n");printf("tt*n");printf("tt! 注:第一次運(yùn)行本程序時(shí)請(qǐng)選擇1功能進(jìn)行輸入 !n");printf("tt*n");printf(" tt請(qǐng)輸入相應(yīng)數(shù)字:");scanf("%d&

36、quot;,&t);if(t>6)|(t<1) printf("tt 對(duì)不起,無(wú)此功能!請(qǐng)回車重新選擇!.n");printf("tt");fflush(stdin);getchar();elseswitch(t) case 1: system("cls"); printf("n");temp=CreatWord();break; case 2: system("cls"); PrintWord();printf("n");printf("n&q

37、uot;);printf("ntt按回車鍵繼續(xù)·····");getchar();getchar();system("cls");break;case 3:system("cls");CountWord();break;case 4: system("cls"); Bmenu(temp);break;case 5:system("cls"); AboutWord();printf("ntt按回車鍵繼續(xù)···

38、··");getchar();getchar();system("cls");break;if(t=6) break;while(1);說(shuō)明:用do-while 語(yǔ)句來(lái)制作文章內(nèi)容處理菜單,用switch 語(yǔ)句來(lái)選擇實(shí)現(xiàn)功能。(9)main() 主函數(shù)void main()head=(LinkList *)malloc(sizeof(LinkList);menu();說(shuō)明:/*先為head申請(qǐng)存儲(chǔ)空間,然后創(chuàng)建指針變量temp,然后直接在主菜單函數(shù)中進(jìn)行其他操作*/三、上機(jī)調(diào)試上機(jī)調(diào)試過(guò)程中遇到的問(wèn)題及解決方法:a)由于本程序的操作大部分都為經(jīng)常使用的查找、刪除,基本的算法及代碼都可以通過(guò)查找資料得到,故沒(méi)有出現(xiàn)多大的問(wèn)題。錯(cuò)誤主要是在于刪除等子函數(shù)中復(fù)雜操作過(guò)程中出現(xiàn)的小問(wèn)題。b)刪除及查找過(guò)程中需要在子函數(shù)中定義一個(gè)數(shù)組變量,用來(lái)存儲(chǔ)輸入的信息,然后用來(lái)與鏈表中的信息進(jìn)行比較以達(dá)到刪除或者查找。另為

溫馨提示

  • 1. 本站所有資源如無(wú)特殊說(shuō)明,都需要本地電腦安裝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ù)覽,若沒(méi)有圖紙預(yù)覽就沒(méi)有圖紙。
  • 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ì)自己和他人造成任何形式的傷害或損失。

評(píng)論

0/150

提交評(píng)論