職工信息管理系統(tǒng).doc_第1頁
職工信息管理系統(tǒng).doc_第2頁
職工信息管理系統(tǒng).doc_第3頁
職工信息管理系統(tǒng).doc_第4頁
職工信息管理系統(tǒng).doc_第5頁
已閱讀5頁,還剩26頁未讀, 繼續(xù)免費閱讀

下載本文檔

版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領

文檔簡介

3武漢長江工商學院計算機科學與技術系,項目名稱: 職工信息管理系統(tǒng) 學生姓名: 陳坤 學 號: 13401005 班 級: 13級計科本1 指導教師: 劉瑩 2014年05月22日目錄1 引言31.1 選題意義31.2 國內外現(xiàn)狀綜述32 系統(tǒng)需求分析32.1 系統(tǒng)功能概述33 系統(tǒng)存儲結構說明43.1 系統(tǒng)存儲信息說明43.2 系統(tǒng)存儲結構設計53.3 系統(tǒng)文件使用說明54 系統(tǒng)功能實現(xiàn)及代碼描述54.1 錄入職工信息模式54.2 瀏覽全體職工信息64.3 查詢職工信息模式74.4 刪除學生信息84.5 修改職工信息模式95系統(tǒng)測試105.1 職工信息錄入模式105.2 職工信息瀏覽模式:105.3 職工信息查詢模式105.4 職工信息刪除模式115.5 職工信息修改模式126體會12參考文獻12附錄:源程序清單1321 引言1.1 選題意義常言道,百丈之臺起于壘土,千里之行始于足下,萬丈高樓平地起,無論職位高低,每個員工都有著自己獨特的對集體的貢獻。職工信息管理系統(tǒng)的建成,對員工信息的收集,整理,梳攏等等都有著促進作用。當今社會,是信息社會,誰能掌握第一手信息,從繁冗的信息庫中發(fā)現(xiàn)閃光點,在事業(yè)的奮斗歷程中,就能先于別人立于不敗之地。使用者有了這個系統(tǒng),對員工信息的掌握也就了如指掌,周到,穩(wěn)固,細致,有條理,這個對于一個龐大的集體的管理統(tǒng)治更加能發(fā)揮突出性的作用。1.2 國內外現(xiàn)狀綜述職工信息管理系統(tǒng)是各大企業(yè)團體的主要日常管理工作之一,涉及到職工升遷去向,任職崗位,素質評價,以及團隊實力,企業(yè)規(guī)劃,工資待遇等等諸多方面的問題,隨著社會經濟發(fā)展,制度的不斷改革,日常管理工作及保存管理日趨繁重、復雜。迫切需要研制開發(fā)一款功能強大,操作簡單,簡潔明了的職工管理系統(tǒng)。 在國外與國內不同,他們一般具有較大規(guī)模的穩(wěn)定的技術隊伍來提供服務與技術支持。而國內企業(yè)信息化建設相對起步較晚,經濟發(fā)展比較落后。在數(shù)字化信息時代,各國家,地區(qū)一方面不斷投資購建各種硬件、系統(tǒng)軟件和網絡,另一方面也不斷開發(fā)實施了各類教學、科研、辦公管理等應用系統(tǒng),形成了一定規(guī)模的信息化建設體系。但是,由于整體信息化程度相對落后,經費短缺,理論體系不健全等原因,國內管理系統(tǒng)在機構設置、服務范圍、服務質量及人員要求上與國外高校相比都有一定的差距。 縱觀目前國內研究現(xiàn)狀,在安全性和信息更新化方面存在有一定的不足,我國信息化網絡平臺監(jiān)管力度不強,信息的保護措施也乏善可陳,因此構建安全有效的職工信息管理系統(tǒng)是我們努力的一大方向。2 系統(tǒng)需求分析2.1 系統(tǒng)功能概述(基本實現(xiàn)哪些功能,文字描述)該職工信息管理系統(tǒng)可以滿足用戶進行一千人以內的任意的職工信息錄入;特定要求的查找,按編號,學歷,電話號碼進行查找;整體信息的瀏覽;員工信息的刪除和修改等等操作,并配以文件及時保存數(shù)據,如下圖2-1所示:圖2-1系統(tǒng)功能模塊圖2.2 系統(tǒng)模塊進入主函數(shù)調用菜單函數(shù)。打印提示信息里面有5個功能供其選擇:菜單1:信息錄入功模式,輸入選項一進入該功能,根據系統(tǒng)提示輸入包括“name,sex,age,salary,education,address,phone,number”等八大類數(shù)據,隱含限制人數(shù)輸入1000人,輸入戶到末尾有提示信息可以跳出錄入環(huán)節(jié);菜單2:為員工信息瀏覽模式,當用戶輸2選項時,系統(tǒng)自動把文件中的數(shù)據調入內存在輸出到顯示器上。供用戶瀏覽。此功能較為簡便,故在此不予以特別闡述;菜單3:為員工信息查詢模式,當用戶選擇3后可以根據自己的需要選擇(1.按編號查詢;2.按學歷查詢3.按號碼查詢0.退出查詢模式);菜單4:員工信息刪除模式,刪除模式之下有三個選項(1.按編號刪除;2.按姓名刪除0.退出刪除模式);當初入查詢信息后,系統(tǒng)會根據查詢信息結果可能反饋三類提示(“1,找到對應的數(shù)據,進行下一步操作;2。未找到相匹配的信息,進行提示操作3。數(shù)據庫為空);菜單5:職工信息修改模式,用戶在主菜單里里面可選擇此功能,菜單0:用戶選擇此操作后結束程序運行。3 系統(tǒng)存儲結構說明3.1 系統(tǒng)存儲信息說明該系統(tǒng)隨機存儲以人為單位的員工編號,姓名,年齡,性別,學歷,工資,電話號碼,地址等信息:其中員工編號隨機生成,為長整型數(shù)據;姓名,學歷,電話號碼,地址等均為字符串型數(shù)據,由用戶輸入;性別為單個字符,男性用M 表示,女性用W表示,用戶輸入;年齡和工資均為普通整型數(shù)據,用戶輸入。3.2 系統(tǒng)存儲結構設計在設計系統(tǒng)時定義了一組囊括1000人的結構體變量struct worker-information【1000】,其中,每個結構體變量之中又定義long int型 number;char name,sex,,education,phone,address;int salary, age用以保存一個人的不同信息數(shù)據。因為C語言中只能定義同一類型數(shù)據的集合,但事實上生活中所接觸到的數(shù)據多種多樣,其中各自之間又有著這樣或那樣的聯(lián)系,因此,編程人員才特意開發(fā)出結構體型變量,用以儲存多種不同類型卻又有關聯(lián)的數(shù)據。3.3 系統(tǒng)文件使用說明系統(tǒng)工作時,預先生成或打開以中文“職工信息管理系統(tǒng)”命名的dat格式的文件,在錄入員工數(shù)據,修改,刪除時調用了save()函數(shù)打開文件用fwrite(p,sizeof(worker-information),1,fp)函數(shù)隨即保存數(shù)據為二進制形式,在主界面之下,程序一經運行,會進入load()函數(shù),利用fread(p,sizeof(worker-information),1,fp)函數(shù)讀取文件信息到內存里頭。int load(struct worker_information *p)/職工信息讀入函數(shù)/ FILE *fp;if(fp=fopen(職工信息管理系統(tǒng).dat,rb)=NULL)return 0; dofread(p,sizeof(struct worker_information),1,fp); p+;while(feof(fp)=0);while(*p1).number0)p1+; fclose(fp);return 0; 4 系統(tǒng)功能實現(xiàn)及代碼描述4.1 錄入職工信息模式首先是進入input函數(shù),依次輸入姓名,年齡,性別.等等,隨后會顯示一個提示窗口“結束輸入請按“#”,此時如果不按#,則會重復調用input函數(shù)自身,進入下一位職工信息的錄入,否則就會結束input函數(shù)的調用,跳出循環(huán)。流程圖如圖4-1所示:圖4-1 錄用職工信息4.2 瀏覽全體職工信息在main()主函數(shù)菜單之下調用Output 函數(shù),輸出已錄入現(xiàn)存的職工數(shù)據,此功能較為簡便,故在此不予以特別概述。流程圖如圖4-2所示:圖4-2 瀏覽職工信息4.3 查詢職工信息模式主函數(shù)之下調用search函數(shù)進入查詢,該功能之下又衍生出三個分支1.按編號查詢;2.按學歷查詢;3.按電話號碼查詢;凡此三類。查詢開始時,先輸入所要查詢的數(shù)據當輸入查詢信息找到與其相匹配的數(shù)據時,輸出相應職工信息跳會search()主函數(shù),否則顯示“您所查詢的用戶數(shù)據不存在”。流程圖4-3如下:圖4-3 職工信息按編號刪除4.4 刪除職工信息主函數(shù)之下調用delete函數(shù)進入刪除頁面,該功能之下又衍生出2個分支:1.按編號刪除;2.按姓名刪除;3.退出刪除模式;凡此三類。開始時,先輸入所要刪除的員工的相應數(shù)據,當輸入查詢信息找到與其相匹配的數(shù)據時,執(zhí)行循環(huán)結構從該職工的后一位開始,以疊羅漢的形式從后往前覆蓋,否則顯示“input error ,please try again”,最后都會返回刪除主界面之下。流程圖4-4如下:圖4-4 刪除職工信息4.5 修改職工信息模式該功能運用與刪除功能類似,主函數(shù)之下調用correct函數(shù)進入修改頁面,該功能之下只能按職工編號修改,開始時,先輸入所要刪除的員工的相應數(shù)據,當輸入查詢信息找到與其相匹配的數(shù)據時,執(zhí)行循環(huán)結構從該職工的后一位開始,以疊羅漢的形式從后往前覆蓋,否則顯示“input error ,please try again”,最后都會返回刪除主界面之下。圖4-5修改職工信息5系統(tǒng)測試5.1 職工信息錄入模式首先是進入input函數(shù),依次輸入姓名,年齡,性別.等等,隨后會顯示一個提示窗口“結束輸入請按“#”,此時如果不按#,則會重復調用input函數(shù)自身,進入下一位職工信息的錄入,否則就會結束input函數(shù)的調用,跳出循環(huán)。程序圖5-1所示:圖5-1 錄入職工信息5.2 職工信息瀏覽模式:在main()主函數(shù)菜單之下調用Output 函數(shù),輸出已錄入現(xiàn)存的職工數(shù)據(職工數(shù)據不得大于1000人份),此功能較為簡便,故在此不予以特別概述。程序功能如圖5-2所示:圖5-2 瀏覽職工信息5.3 職工信息查詢模式主函數(shù)之下調用search函數(shù)進入查詢,該功能之下又衍生出三個分支:1.按編號查詢;2.按學歷查詢;3.按電話號碼查詢;凡此三類。查詢開始時,先輸入所要查詢的數(shù)據當輸入查詢信息找到與其相匹配的數(shù)據時,輸出相應職工信息跳會search()主函數(shù),否則顯示“您所查詢的用戶數(shù)據不存在”。程序圖5-3所示:圖5-3 查詢職工信息5.4 職工信息刪除模式主函數(shù)之下調用delete函數(shù)進入刪除頁面,該功能之下又衍生出2個分支:1.按編號刪除;2.按姓名刪除;3.退出刪除模式;凡此三類。開始時,先輸入所要刪除的員工的相應數(shù)據,當輸入查詢信息找到與其相匹配的數(shù)據時,執(zhí)行循環(huán)結構從該職工的后一位開始,以疊羅漢的形式從后往前覆蓋,否則顯示“input error ,please try again”,最后都會返回刪除主界面之下。程序圖5-4所示:圖5-4 刪除職工信息5.5 職工信息修改模式該功能運用與刪除功能類似,主函數(shù)之下調用correct函數(shù)進入修改頁面,該功能之下只能按職工編號修改,開始時,先輸入所要刪除的員工的相應數(shù)據,當輸入查詢信息找到與其相匹配的數(shù)據時,執(zhí)行循環(huán)結構從該職工的后一位開始,以疊羅漢的形式從后往前覆蓋,否則顯示“input error ,please try again”,最后都會返回刪除主界面之下。程序圖如圖5-5所示:圖5-5 修改職工信息6體會這次的課程設計,準確來說,難度一般,只不過要想辦法講函數(shù)各功能之間銜接恰當,就不是那么簡單了;再者數(shù)據輸入時的緩沖溢出問題,要么只能用getchar(),要么就用fflush(stdin)來實現(xiàn)清理緩沖區(qū)的功能,始終未能找到一個更妥帖的辦法;其次,文件的讀寫格式,以及文件的運用,使用起來要注意的細節(jié)太多,并且形式僵硬,容易出錯,限制太多;最后,就是論文的完成,說實話,真是沒有話好說,基本是黔驢技窮,還有就是流程圖,真是難畫。參考文獻1譚浩強.C語言程序設計M. 第四版.北京:清華大學出版社 20102譚浩強.C語言程序設計學習輔導. 第四版.北京清華大學出版社 20103何欽銘,顏暉.C語言程序設計M.第二版.北京高等教育出版社 20124顏暉,柳俊.C語言程序設計習題與實驗指導M. 北京高等教育出版社 20125楊開成.白話C語言M.北京電子工業(yè)出版社,20106楊路明.C語言程序設計M.第二版.北京:北京郵電大學出版社,20077楊路明.C語言程序設計上機指導與習題選解M.第二版.北京北京郵電大學出版 20078張永福.C語言程序設計M.遼寧:遼寧大學出版社,2007附錄:源程序清單#include#include#include#includestruct worker_information long number; char name10; char sex; int age; char education9; int salary; char address16; char phone12;#define M 1000struct worker_information *p1;void print1(struct worker_information *);void print2(struct worker_information *);void main()char menu();void input_information(struct worker_information *);void output_information(struct worker_information *);int search_information(struct worker_information *);int delete_information(struct worker_information *);int correct_information(struct worker_information *);void reserve(struct worker_information *);int load(struct worker_information *);struct worker_information informM,*p=inform;p1=inform;load(p);char x;while(x=menu() switch(x) case 1: input_information(p1); reserve(p); printf(信息錄入完畢n); break; case 2: printf(您正在進行職工信息瀏覽:n); output_information(p); break; case 3: search_information(p); break; case 4: printf(您正在進行職工信息刪除:n); delete_information(p); reserve(p); break; case 5: printf(您正在進行職工信息修改:n); correct_information(p); reserve(p); break; case 6: printf(確認要格式化全部數(shù)據y/n?: ); scanf(%c,&x); getchar(); if(x=y|x=Y) p1=p; reserve(p); printf(格式化成功,謝謝使用.n); break; case 0: exit(0); default: printf(input error,please try again and later.n); system(pause); system(cls); printf(thanks for your using ,bye-byen);char menu() /*菜單選項*/ printf(n 職工信息管理系統(tǒng):n);printf(*t 莫 不n);printf(*t1.職工信息錄入模式 *t 失 離n);printf(*t2.職工信息瀏覽模式 *t 莫 不n);printf(*t3.職工信息查詢模式 *t 忘 棄n);printf(*t4.職工信息刪除模式 *n); printf(*t5.職工信息修改模式 *t 仙 芳n); printf(*t6.格式化磁盤數(shù)據 *t 壽 齡n);printf(*t0.退出系統(tǒng) *t 恒 永n);printf(*t 昌 繼nn);printf(請輸入您的選擇);char ch;fflush(stdin);scanf(%c,&ch);return ch;void input_information (struct worker_information *p)/職工信息錄入模式/printf(您正在進行職工信息錄入環(huán)節(jié):n);srand(unsigned(time(NULL);p-number=rand()%1000+2011000; printf(請輸入職工號為%d的職工個人信息:n,p-number);printf(請輸入職工姓名: );scanf(%s,p-name); printf(請輸入職工年齡: ); scanf(%d,&p-age);getchar();printf(請輸入職工性別女,M-男: );scanf(%c,&p-sex); printf(請輸入職工學歷: );scanf(%s,p-education);getchar(); printf(請輸入職工薪水: ); scanf(%d,&p-salary); printf(請輸入職工地址:); scanf(%s,p-address); printf(請輸入電話號碼:); scanf(%s,p-phone); getchar(); p+;p1+; printf(按#號鍵回車后終止:); if(getchar()!=#) system(cls); input_information(p); void output_information(struct worker_information *p)/職工信息瀏覽模式/printf(_n);print1(p);int i=0;while(pp1)print2(p); p+;i+; if(p=p1)printf(信息在錄者共計%d人.n,i);putchar(10); if(p1=p&i=0)printf(nothing at all,please addedn);int search_information(struct worker_information *p)/職工信息查詢模式/ int search_information1(struct worker_information *,long ); int search_information2(struct worker_information *,char a ); int search_information3(struct worker_information *,char a ); if(p=p1)printf(數(shù)據庫空白,該功能暫無法執(zhí)行,請?zhí)砑訑?shù)據.n); return 0;char i,a11;int x; do output_information(p); printf(您正在進行職工信息查詢:n);printf(%8d.按職工編號查詢.%8d.按職工學歷查詢.n%8d.按電話號碼查詢.%8d.退出當前頁面.n,1,2,3,0);printf(請輸入您的選擇:);getchar();scanf(%c,&i);getchar();switch(i) case 1: printf(please input the workers number : ); scanf(%d,&x); search_information1(p,x); break; case 2: printf(please input the workers education: ); scanf(%s,a); search_information2(p,a); break; case 3: printf(please input the workers phone number: ); scanf(%s,a); search_information3(p,a); break; case 0: break; default: printf(input error,try again please :n); break;if(i!=0) system(pause);system(cls); while(i!=0); return 0;int search_information1(struct worker_information *p,long i)/職工信息按編號查詢/for(int x=0,n=0;pnumber) if(n=0) printf(the result is :n); print1(p); n+; print2(p); if(p=p1&n!=0) printf(找到適配信息者%d人.n,n); if(n=0) printf(Failed to find a match with ,please try againn); return n;int search_information2(struct worker_information *p,char i)/職工信息按學歷查詢/for(int n=0;peducation)=0) if(n=0) printf(the result is :n); print1(p); n+; print2(p); if(p=p1&n!=0) printf(找到適配信息者%d人.n,n); if(n=0) printf(Failed to find a match with ,please try againn); return n;int search_information3(struct worker_information *p,char i)/職工信息按電話號碼查詢/for(int n=0;pphone)=0) if(n=0) printf(the result is :n); print1(p); n+; print2(p); if(p=p1&n!=0) printf(找到適配信息者%d人.n,n); if(n=0) printf(Failed to find a match with ,please try againn); return n;int delete_information(struct worker_information *p)/職工信息刪除模式/int delete_information1(struct worker_information *);int delete_information2(struct worker_information *);if(p=p1)printf(數(shù)據庫空白,該功能暫無法執(zhí)行,請?zhí)砑訑?shù)據.n);return 0;char i;do printf(t您已進入職工信息刪除模式:n);printf(t1.按職工編號刪除.t2.按職工姓名刪除.t0.退出刪除模式.n);printf(t請輸入您的選擇: ); fflush(stdin);scanf(%c,&i);getchar();switch(i) case 1: output_information(p); delete_information1(p); break; case 2: output_information(p); delete_information2(p); break; case 0: printf(謝謝使用,再見n); break; default: printf(input error,try again pleasen); break; if(i!=0)system(pause); system(cls);while(i!=0);return 0;int delete_information1(struct worker_information *p)/職工信息按編號刪除/ printf(please input the workers number :); long int i; int n; char ch; scanf(%d,&i); getchar(); n=search_information1(p,i); if(n=0) return 0; printf(_n); printf(確定刪除y/n: ); scanf(%c,&ch); getchar(); if(ch=y|ch=Y) for(struct worker_information *p2=p;pnumber!=i) *p2+=*p; p1=p2;printf(finished deleting.n); else printf(謝謝使用,再見.n); putchar(10); return 0;int delete_information2(struct worker_information *p)/職工信息按姓名刪除/intdelete_information3(struct worker_information *p,char i,int n);intdelete_information4(struct worker_information *p,char i);printf(please input the workers name:); char i11,ch;scanf(%s,i);getchar(); for(int x=0,n=0;pname)=0) if(x=0) printf(the information of the worker were:n);print1(p);x+; print2(p); p=p1-n; if(x=0) printf(cannot find something matched with,please try again and later.n); return 0; else printf(已找到適配信息者統(tǒng)共%d人n,x); printf(t1.以上信息全部刪除t2.按編號選擇性刪除t3.退出刪除模式n); printf(請輸入刪除方式: ); scanf(%c,&ch); getchar(); switch(ch) case 1: delete_information4(p,i);/轉接到全部刪除函數(shù)/ break; case 2: delete_information3(p,i,n);/在姓名的基礎上納入若干職工編號進一步篩選刪除/ break; case 3: printf(謝謝使用,再見.n); break; default: printf(input error,please try again and later.n); return 0; int delete_information4(struct worker_information *p,char i)printf(確定刪除y/n?: );char ch;scanf(%c,&ch);getchar(); if(ch=y|ch=Y) for(struct worker_information *p2=p;pname,i)!=0) *p2+=*p; p1=p2;printf(finished deleting.n); else printf(謝謝使用,再見.n); return 0;int delete_information3(struct worker_information *p,char i,int n)int j=0; printf(請輸入您想要刪除掉的職工編號,以回車鍵結束:); long int a100; for(int x=0;xn;x+) scanf(%d,&ax); if(getchar()=n) break; for(int y=0;y=x;y+) for(struct worker_information *p2=p;p2number=ay&strcmp(p2-name,i)=0) while(p2p1) *p2=*(p2+1),p2+; p1-,j+; else if(p2=p1-1) printf(職工號%d輸入有誤,刪除失敗.n,ay); if(j!=0) printf(成功刪除有%d人.n,j); return 0;int correct_information(struct worker_information *p)/職工信息修改模式/int correct_information1(struct worker_information *);int correct_information2(struct worker_information *);if(p=p1)printf(數(shù)據庫空白,您暫時無法使用該功能,請?zhí)砑訑?shù)據后重試.n);return 0;char i;do output_information(p); printf(您已進入職工信息修改模式:n);printf(nt1.按職工編號修改.t2.按職工姓名修改.t0.退出修改模式.n);printf(t請輸入修改方式: ); fflush(stdin);scanf(%c,&i);getchar();switch(i) case 1: correct_information1(p); break; case 2: correct_information2(p); break; case 0: printf(謝謝使用,再見n); break; default: printf(input error,try again please and latern); break; if(i!=0)system(pause);system(cls);while(i!=0);return 0;int correct_information1(struct worker_information *p)/職工信息修改模式/ struct worker_information *p2;printf(please input the workers number :); long int i; int n; char ch;scanf(%d,&i);getchar(); n=search_information1(p,i);if(n=0)return 0;for(p2=p;p2number)break; printf(t1.職工姓名修改: ); printf(t2.職工年齡修改: ); printf(t3.職工性別修改:n ); printf(t4.職工學歷修改: ); printf(t5.職工薪水修改: ); printf(t6.職工地址修改:n ); printf(t7.電話號碼修改: ); printf(t8.退出修改模式:n ); printf(請輸入職工號為%d的職工個人信息:n,p2-number);do printf(t請輸入您的選擇: );scanf(%d,&n);getchar(); switch(n) case 1: printf(請輸入職工姓名: ); scanf(%s,&p2-name); break; case 2: printf(請輸入職工年齡: ); scanf(%d,&p2-age); break; case 3: printf(請輸入職工性別女,M-男: ); scanf(%c,&p2-sex); break; case 4: printf(請輸入職工學歷: ); scanf(%s,p2-education); break; case 5: printf(請輸入職工薪水: ); scanf(%d,&p2-salary); break; case 6: printf(請輸入職工地址:); scanf(%s,p2-address); break; case 7: p

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網頁內容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
  • 4. 未經權益所有人同意不得將文件中的內容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網僅提供信息存儲空間,僅對用戶上傳內容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內容本身不做任何修改或編輯,并不能對任何下載內容負責。
  • 6. 下載文件中如有侵權或不適當內容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論