




版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領
文檔簡介
1、精選優質文檔-傾情為你奉上C程序設計課程設計報告設計題目: 宿舍管理系統 專 業 班 級 學 號 學生姓名 指導教師 設計時間 教師評分 2001年月日專心-專注-專業目 錄 5 5 5 28 29 29 1.概述1.1目的根據課堂講授內容,學生做相應的自主練習,消化課堂所講解的內容;通過調試典型例題或習題積累調試C程序的經驗;通過完成輔導教材中的編程題,逐漸培養學生的編程能力、用計算機解決實際問題的能力。1.2課程設計的組成部分(1).選題(2).查閱文獻和相關資料(3).程序構思、編譯和調試(4).形成報告和提交報告2.設計的內容:該設計內容為“宿舍管理系統”, 實現對學生宿舍信息的輸入、
2、輸出、添加、刪除、錄入、排序、查詢、存儲、讀取。讓我們更能快速的查詢學生的住宿情況和管理學生。它涉及到C語言的基本類型與各種表達式的應用,程序的流程控制語句,有結構類型的定義,結構型函數的關系,例如:struct 為結構類型函數,sustem 發出一個DOS命令,scanf輸入函數,getchar讀取字符,printf打印函數,n換行,char flag聲明flag是字符型變量。這些語句的使用能讓我們更清楚宿舍管理系統中學生的信息。 3.總結通過這次實驗,我得到了練習,增強了自己的動手能力,和同學的溝通能力,自己動手編輯的能力,在將來的學習生活中能更好的運用所學的東西去解決問題。3.1課程設計
3、進行過程及步驟輸出模塊:進行學生信息的輸出 /*輸出模塊*/void output(struct car *p)system("cls");printf("-n");printf("-n");printf("nn -學生信息表- nn");printf("-n");printf("-n");printf("學號-班級-宿舍-學生姓名-學生專業n");printf("-n");p=p->next;while(p!=NULL)prin
4、tf("%3d %8s %8s %8s %sn",p->num,p->classes,p->sushe,p->name,p->zhuanye);printf("-n");p=p->next;printf("按任意鍵退出!n");getch(); 3.2所遇到的問題,你是怎樣解決這些問題的 在課程設計在過程中,對于函數關系之間在運用還不夠清晰,在通過反復書寫語句的過程中結合該設計進行詳細分析理解,反復對函數運用進行強化,通過老師的幫助下,對函數在運用有了進一步在認識;在輸出模塊中,出現過多次語句的錯誤
5、,在運行過程就運行不了,然后在檢查時候查不出來錯誤位置,通過仔細檢查后,在老師和同學幫助下找出問題所在,并改正語句,程序可以正常運行。3.3體會收獲及建議 通過本次重修課程設計,在設計過程中,充分體驗到同學之間在友誼是非常重要的,體驗到團結的力量,在對于每個出現的問題,也需要我們認真思考、反復查找問題所在,找出問題根源,再通過對知識的加深,老師指導、同學的幫助下解決了問題;還有在面對問題出現時,我必須要以一個良好的心態面對,不能煩躁,這時候就是體驗我們的耐性。本次設計讓我受益匪淺,應該樹立終生學習的目標,在走入社會后也應該有這種信念和態度,用知識來武裝自己。非常感謝老師在陪伴和指導,感謝身邊在
6、同學,我一定繼續努力。3.4程序源代碼#include <stdio.h>#include <stdio.h>#include <stdlib.h>#include <conio.h>#include <windows.h>#include <malloc.h>#include <string.h>#include <io.h>#define N sizeof(struct car)#define LEN 100/*歡迎界面*/void welcomehu()system("cls&quo
7、t;);printf("tt§§§§n");printf("tt n");printf("tt n");printf("tt-津橋歡迎你-第四小組設計n");printf("tt n");printf("tt n");printf("tt n");printf("tt|-|n");printf("tt|* *|n");printf("tt|*宿舍管理系統*|n&quo
8、t;);printf("tt|* *|n");flushall();getch();system("cls");/*學生信息錄入模塊*/struct carint num; /*學號*/char classes10; /*班級*/char sushe10; /*宿舍*/char name20; /*學生姓名*/char zhuanye20; /*學生專業*/struct car *next;/*系統密碼模塊*/void mimahu()FILE *fp;int i=0;char a6,aa;char b6;fp=fopen("mima.txt&
9、quot;,"rt");if(fp=NULL)system("cls");printf("*n");printf("* 請您輸入系統初始密碼(六位) *n");printf("*n");fp=fopen("mima.txt","wt");for(i=0;i<6;i+)aa=getch();printf("*");ai=aa;fputs(a,fp);fclose(fp);fgets(a,7,fp);system("cls&
10、quot;);printf("|-|n");printf("|請輸入系統管理員密碼:(6位)|n");printf("|-=-|n");flushall();for(i=0;i<6;i+)bi=getch();printf("*");if(a0=b0&&a1=b1&&a2=b2&&a3=b3&&a4=b4&&a5=b5)system("cls");printf("-n");printf(&q
11、uot; 密碼正確! n ");printf("-n");printf("nn*按任意鍵進入主菜單*n");printf("-n");getch();elsesystem("cls");printf("*n");printf("* *n");printf("* 對不起密碼錯誤! 按任意鍵退出! *n");printf("* *n");printf("*n");flushall();getchar();exi
12、t(1); /*輸出模塊*/void output(struct car *p)system("cls");printf("-n");printf("-n");printf("nn -學生信息表- nn");printf("-n");printf("-n");printf("學號-班級-宿舍-學生姓名-學生專業n");printf("-n");p=p->next;while(p!=NULL)printf("%3d %8s
13、 %8s %8s %sn",p->num,p->classes,p->sushe,p->name,p->zhuanye);printf("-n");p=p->next;printf("按任意鍵退出!n");getch(); /*錄入模塊*/struct car *build()int i=0;char flag;struct car*p,*q,*head;system("cls");head=q=(struct car *)malloc(N);p=(struct car *)malloc(
14、N);printf("*n");printf("* 錄入學生信息 *n");printf("*n");printf("n 第%d個學生n",i+1);printf("*n");printf("n 學號:");scanf("%d",&p->num);printf("-n");printf("n 班級:");scanf("%s",p->classes);getchar();prin
15、tf("-n");printf("n 宿舍:");scanf("%s",&p->sushe);printf("-n");printf("n 學生姓名:");flushall();scanf("%s",&p->name);printf("-n");printf("n 學生專業:");flushall();scanf("%s",p->zhuanye);printf("-n&qu
16、ot;);q->next=p;q=p;/system("cls");for(i=1;i+)/ q->next=p;/ q=p;system("cls");printf("*n");printf("* 是否繼續錄入?(Y/N) *n");printf("*n");getchar();scanf("%s",&flag);getchar();if(flag!='y'&&flag!='Y')break;/ q->
17、;next=p;/ q=p;p=(struct car *)malloc(N);system("cls");printf("*n");printf("n 第%d個學生n",i+1);printf("*n");printf("n 學號:");scanf("%d",&p->num);printf("-n");printf("n 班級:");scanf("%s",p->classes);getchar(
18、);printf("-n");printf("n 宿舍號:");scanf("%s",&p->sushe);printf("-n");printf("n 學生姓名:");scanf("%s",&p->name);getchar();printf("-n");printf("n 學生專業:");scanf("%s",p->zhuanye);printf("-n");
19、system("cls");q->next=p;q=p;flushall();p->next=NULL;/ free(q);flushall();output(head);flushall();return (head);/*按班級排序*/struct car *sort(struct car *h) struct car *temp1,*p1,*p2,*min,*temp;temp=(struct car *)malloc(N);if(h=NULL)return h;for(p1=h;p1!=NULL;p1=p1->next)min=p1;for(p2=
20、p1;p2!=NULL;p2=p2->next)if(min->num>p2->num)min=p2;if(min!=p1)*temp=*min;*min=*p1;*p1=*temp;temp1=min->next;min->next=p1->next;p1->next=temp1;printf("n");return(h);/*文件保存模塊*/void save_file(struct car *head)struct car *p;FILE *fp; char filename100;system("cls&qu
21、ot;);printf("-n");printf("n請輸入要保存的文件名:n");scanf("%s",filename);flushall();printf("-n");if(fp=fopen(filename,"wt")=NULL)printf("-n");printf("n寫文件錯誤!按任意鍵退出!n");printf("-n");getch();exit(1);for(p=head->next;p!=NULL;p=p-&
22、gt;next)fprintf(fp,"%d %s %s %s %sn",p->num,p->classes,p->sushe,p->name,p->zhuanye);printf("-n");printf("n文件已保存成功!按任意鍵返回!n");printf("-n");getch();fclose(fp);/*文件讀取模塊*/struct car *read_file(char name)struct car *head,*r,*p;FILE *fp;system("c
23、ls");if(fp=fopen(name,"rt")=NULL)printf("-n");printf("nn*您的信息文件為空n按任意鍵退出*n");printf("-n");getch();exit(1);r=head=(struct car *)malloc(N);/head->next=NULL;/r=head;while(!feof(fp)p=(struct car *)malloc(N);fscanf(fp,"%d %s %s %s %sn",&p->
24、num,p->classes,&p->sushe,&p->name,p->zhuanye);/ if(feof(fp)/ break;r->next=p;r=p;r->next=NULL;/free(p);fclose(fp);return(head);/*學生查詢模塊*/struct car *find(struct car *p)int num;char name210;int choice;system("cls");printf("#-#n");printf("# 1 按班級查找 #n
25、");printf("#-#n");printf("# 2 按學號查找 #n");printf("#-#n");printf("請選擇(1或2)");scanf("%d",&choice);if(choice=2)printf("-n");printf("請輸入你要查找(修改)的學號: n");printf("-n");scanf("%d",&num);while(p->next!=N
26、ULL)p=p->next;if(p->num=num)return p;return NULL;if(choice=1)printf("-n");printf("請輸入你要查找(修改)的班級: n");printf("-n");scanf("%s",name2);while(p->next!=NULL)p=p->next;if(!(strcmp(p->name,name2)return p;return NULL;return NULL;/*學生刪除模塊*/int shanchu(s
27、truct car *p0)int num;struct car *p;p=p0->next;if(p=NULL)return 0;system("cls");printf("-n");printf("請輸入要刪除學生學號:n");printf("-n");scanf("%d",&num);while(p!=NULL)if(p->num=num)p0->next=p->next;free(p);return 1;p0=p;p=p->next;return 0
28、;/*學生增加模塊*/int charu(struct car *p0)struct car *p;p=(struct car *)malloc(N);system("cls");printf("-n");flushall();printf("請輸入你要增加的學生信息:n");printf("-n");printf("-n");printf("n 學號:");flushall();scanf("%d",&p->num);printf(&quo
29、t;-n");printf("n 班級:");flushall();scanf("%s",p->classes);getchar();printf("-n");printf("n 宿舍號:");flushall();scanf("%s",&p->sushe);printf("-n");printf("n 學生姓名:");flushall();scanf("%s",&p->name);print
30、f("-n");printf("n 學生專業:");scanf("%s",p->zhuanye);while(p0->next!=NULL)p0=p0->next;p0->next=p;p->next=NULL;return 1;/*學生篩選模塊*/void shaixuan(struct car *p0)struct car *t,*p;int flag=0;t=(struct car *)malloc(N);system("cls");printf("請輸入你要選擇學生宿
31、舍n");scanf("%s",&t->sushe);printf("-n");getchar();printf("請輸入你要選擇學生姓名n");scanf("%s",&t->name);printf("-n");for(p=p0;p!=NULL;p=p->next)system("cls"); if(p->sushe=t->sushe)flag=1;printf("-n");printf("
32、;學號-班級-宿舍號-學生姓名-學生專業n");printf("-n");printf("%3d %8s %8s %8s %sn",p->num,p->classes,p->sushe,p->name,p->zhuanye);printf("-n");printf("-n");printf("nn*按任意鍵繼續*n");printf("-n");getch();if(flag=0)printf("-n");print
33、f("該學生信息不存在!");printf("-n");printf("nn*按任意鍵返回*n");printf("-n");getch();/*修改學生信息模塊*/void xiugai(struct car *p)system("cls");printf("*n");printf("n 請輸入修改后學生的信息n");printf("*n");printf("n 學號:");scanf("%d"
34、,&p->num);printf("-n");printf("n 班級");scanf("%s",p->classes);getchar();printf("-n");printf("n 宿舍號:");scanf("%s",&p->sushe);printf("-n");printf("n 學生姓名:");scanf("%s",&p->name);printf(&quo
35、t;-n");printf("n 學生專業:");scanf("%s",p->zhuanye);printf("-n");/*創建用戶界面*/char chuangjian()char flag;system("cls");printf("*n");printf("* 您是否要注冊新用戶(y/n) *n");printf("*n");scanf("%c",&flag);return flag;/*選擇用戶界面*/
36、void xuanze()system("cls");printf("*n");printf("* 請選擇您要登錄的用戶名 *n");printf("*n");/*修改后保存模塊*/void baocun(char a,struct car *head)char flag;struct car *p;FILE *fp;system("cls");printf("*n");printf("* 您是否要保存(y/n) *n");printf("*n&
37、quot;);getchar();scanf("%c",&flag);getchar();if(flag='y'|flag='Y')if(fp=fopen(a,"wt")=NULL)printf("-n");printf("n寫文件錯誤!按任意鍵退出!n");printf("-n");getch();exit(1);for(p=head->next;p!=NULL;p=p->next)fprintf(fp,"%d %s %s %s %
38、sn",p->num,p->classes,p->sushe,p->name,p->zhuanye);system("cls");printf("*n");printf("* 保存成功! *n");printf("*n");printf("-n");printf("-n");printf("nn*按任意鍵返回*n");printf("-n");getch();fclose(fp);void mai
39、n()struct car *head,*p;int choice;char flag;char name20;system("color 0B");welcomehu();mimahu();flag=chuangjian();if(flag='y'|flag='Y')head=build();save_file(head);xuanze();scanf("%s", name);head=read_file(name);dosystem("cls"); printf("# ! #n"
40、);printf("# ! #n");printf("#* !宿舍管理系統! *#n");printf("#-!-#n");printf("#-!-!-#n");printf("#-#n");printf("# 1 讀取學生信息 #n");printf("#-#n");printf("# 2 查詢學生信息 #n");printf("#-#n");printf("# 3 刪除學生信息 #n");pr
41、intf("#-#n");printf("# 4 增加學生信息 #n");printf("#-#n");printf("# 5 排序學生信息 #n");printf("#-#n");printf("# 6 修改學生信息 #n");printf("#-#n");printf("# 7 查找學生信息 #n"); printf("#-#n");printf("# 0 退出程序 #n");printf(&
42、quot;!n");printf("-n");printf("請選擇(0-7)");scanf("%d",&choice);switch(choice)case 1: output(head);break;case 2: p=find(head);if(p)printf("-n");printf("學號-班級-宿舍號-學生姓名-學生專業n");printf("-n");printf("%3d %8s %3s %3s %sn",p->
43、num,p->classes,p->sushe,p->name,p->zhuanye);printf("-n");printf("nn*按任意鍵返回*n");printf("-n");getch();elseprintf("-n");printf("該學生信息不存在!");printf("-n");printf("nn*按任意鍵返回*n");printf("-n");getch();break;case 3: if(shanchu(head)printf("-n");printf("學生刪除成功!n");printf("-n");printf("nn*按任意鍵繼續*n");pr
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯系上傳者。文件的所有權益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網頁內容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
- 4. 未經權益所有人同意不得將文件中的內容挪作商業或盈利用途。
- 5. 人人文庫網僅提供信息存儲空間,僅對用戶上傳內容的表現方式做保護處理,對用戶上傳分享的文檔內容本身不做任何修改或編輯,并不能對任何下載內容負責。
- 6. 下載文件中如有侵權或不適當內容,請與我們聯系,我們立即糾正。
- 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 2025年一次性尿袋行業市場研究報告
- 2025-2030年中國折疊式微孔膜濾芯行業深度研究分析報告
- 13語音專線服務合同5篇
- 工程建筑施工承包合同5篇
- 體檢項目可行性研究報告
- GB/T 45402-2025智慧城市城市智能中樞參考架構
- 工程圍檔銷售合同協議
- 基金交易服務合同協議
- 大師工作室師徒協議合同
- 大型倉儲托管租賃合同協議
- 2024年四川省成都市龍泉驛區中考數學二診試卷(含答案)
- MOOC 感測技術-武漢理工大學 中國大學慕課答案
- 2024年陜西新華出版傳媒集團新華書店分公司招聘筆試參考題庫含答案解析
- 鐵路機務知識培訓課件
- 人工智能在制造業中的應用2024年智能工廠的新范式
- (高清版)TDT 1037-2013 土地整治重大項目可行性研究報告編制規程
- 呼氣一氧化氮檢測技術
- 礦山運輸及安全
- 鋁加工(深井鑄造)企業重點事項解讀(米)
- 鉛鋅礦的選礦工廠自動化控制技術
- 體育賽事管理課件
評論
0/150
提交評論