學生學籍信息管理系統(tǒng)設計書_第1頁
學生學籍信息管理系統(tǒng)設計書_第2頁
學生學籍信息管理系統(tǒng)設計書_第3頁
學生學籍信息管理系統(tǒng)設計書_第4頁
學生學籍信息管理系統(tǒng)設計書_第5頁
已閱讀5頁,還剩9頁未讀, 繼續(xù)免費閱讀

下載本文檔

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

文檔簡介

1、學生學籍信息管理系統(tǒng) -C語言課程設計指導教師:王麗設 計 者:劉忠泰 劉啟東 陳俊京 程 龍 專業(yè)班級:通信112班設計時間:2012年6月組 員 分 工1、組長:劉忠泰 主函數(shù)部分及輸入信息、輸出信息。2、組員:程 龍 查詢信息。3、組員:劉啟東 修改信息。4、組員:陳俊京 添加信息。 學生學籍信息管理系統(tǒng)一、系統(tǒng)的軟硬件環(huán)境1、硬件環(huán)境:一般來說586電腦就可以提供并支持系統(tǒng)的使用及運行,此外,若想打印或成稿還需要使用打印機; U盤、軟盤也是程序的必要載體。2、軟件環(huán)境: Windows環(huán)境下安裝Turbo C2.0語言系統(tǒng),安裝完畢后即可使用,而且要用到UCDOS。二、系統(tǒng)總體框架圖

2、學生學籍信息管理系統(tǒng)是實現(xiàn)對學生學籍信息如學號、姓名、性別、年齡、家庭地址、聯(lián)系電話等實現(xiàn)輸入、查詢有關信息、修改有關信息、輸出、添加新生信息等功能的系統(tǒng),系統(tǒng)框架如圖1所示。學生學籍信息管理系統(tǒng)輸入模塊輸出模塊查找模塊修改模塊追加模塊顯示模塊按學號查找按姓名查找按姓名修改按學號修改排序模塊圖1 學生學籍信息管理系統(tǒng)框架圖三、程序功能簡介(1)輸入模塊(creat函數(shù))該模塊是實現(xiàn)對學生姓名、性別、學號、成績、年齡等的錄入并保存到文件“stu”中。(2)修改模塊(modify函數(shù))該模塊實現(xiàn)按學號或按姓名對學生所有信息的修改。修改成功顯示已修改后的文件數(shù)據(jù)。(3)查找模塊(search函數(shù))實

3、現(xiàn)按學號或姓名查詢每個學生的學號、姓名、性別、年齡、地址等信息。查到后顯示所查學生的全部信息,若不存在則顯示未找到。(4)輸出模塊(output函數(shù))該模塊實現(xiàn)對文件“stu” 學生姓名、性別、學號、地址、年齡等的顯示。 (5)添加模塊(ADD函數(shù)) (6)顯示模塊(show函數(shù))該模塊實現(xiàn)制作人員相關信息的顯示。(7)退出運行界面(quit)退出整個函數(shù)運行界面。四、結束語通過本次課程設計,我學到很多東西,而最大的收獲就是:真正從實踐的角度初步體會到了C語言在實際生活中的作用,也深刻體會到了它帶來的方便快捷。美中不足的就是,本程序還處于初級階段的學生信息管理功能中,只實現(xiàn)了對學生的錄入、修改

4、、查詢、輸出等簡單功能,不一定在實際中有大的用途。在此次程序設計中,出現(xiàn)了各種各樣的問題,在完成各自模塊建立起程序后運行后,出現(xiàn)了在按照正確形式輸入后,不能正確輸出結果,而且在運行時也沒有提示有錯誤,無奈之下去找老師解決問題,老師告訴我很有可能是輸入函數(shù)的問題,經(jīng)過仔細的檢查和調(diào)試我最終用把變量定義為外部變量的方式解決了問題。查詢模塊是我編寫是花費時間最多的一部分,并且在其中加入了子菜單,想實現(xiàn)分別用學號和姓名查找,所以花費了很多精力,也修改了很多次,但在努力下最終成功了;然后仿照查找模塊在修改模塊中也加入了子菜單,豐富了程序的函數(shù)。程序編排中可能有繁瑣之處有待進一步簡化,本次設計的困難是在編

5、輯程序時發(fā)現(xiàn)自己對C語言的了解還處于初級階段,不能完美的設計出能夠在實際生活中應用的程序,如果有機會我會繼續(xù)學習,做出更好的程序。五、參考文獻1譚浩強.C程序設計.清華大學出版社.2005年7月2陳志華.Delphi 6.0編程實例.中國水利水電出版社.2002年6月3David M.Collopy、羅鐵庚.C語言教程:模塊化程序設計.清華大學出版社. 2004年9月4鄧文新、張宏烈.C語言程序設計方法.哈爾濱工業(yè)大學出版社.2004年2月5田淑清.全國計算機等級考試二級教程.高等教育出版社.1998年7月附錄: 程序清單#include<stdio.h>#include<c

6、onio.h>#include<stdlib.h>#include<string.h>#define N 100typedef struct studentchar num15;char name10;int age;char sex5;char addr50;char tel15;STUDENT;struct student stuN;int w=0,a,j=0;void print_list()printf("n 學號 姓名 年齡 性別 地址 電話號碼n");void print_message(int i,struct student s

7、tuN)printf("n %-12s",stui.num);printf("%-7s",);printf("%-7d",stui.age);printf("%-8s",stui.sex);printf("%-26s",stui.addr);printf("%s",stui.tel);int main()char c;void creat (struct student stuN);void modify (struct student stuN);void

8、 search (struct student stuN);void output (struct student stuN);void add(struct student stuN);void arr(struct student stuN);void show(); do printf("nn=n"); printf(" 歡迎進入學生學籍信息管理系統(tǒng)! n"); printf("=n"); printf(" 1-輸入記錄n"); printf(" 2-添 加n"); printf(&quo

9、t; 3-輸出記錄n"); printf(" 4-查找記錄n"); printf(" 5-修改記錄n"); printf(" 6-學號排列n"); printf(" 7-制作人員n");printf(" 8-退出程序n"); printf("=n"); printf("請選擇功能種類 <1/2/3/4/5/6/7/8>并按回車鍵執(zhí)行命令n" );scanf("%c",&c); getchar();switc

10、h(c) case '1':creat(stu);break; case '2':add(stu);break; case '3':output (stu);break; case '4':search(stu);break; case '5':modify(stu);break; case '6':arr(stu);break; case '7':show(stu);break;case '8':return; default:printf("ERROR!

11、請正確輸入!n");continue; while(w=0);void creat(struct student stuN) /*輸入信息*/FILE *fp;int i,j;char ch,t5;if(fp=fopen("MESSAGE.dat","wb")=NULL)printf("無信息"); exit(0);i=0;printf("tt=<<輸入信息>>=n");do printf("tt輸入學號:");gets(stui.num); printf(&q

12、uot;tt姓名:");gets();printf("tt年齡:");gets(t);stui.age=atoi(t);printf("tt性別:");gets(stui.sex);printf("tt住址:");gets(stui.addr);printf("tt電話:");gets(stui.tel);printf("tt是否繼續(xù)? <Y或N>");scanf("%c",&ch);getchar();i+;while(ch=

13、'y'|ch='Y');for(j=0;j<=i-1;j+)fwrite(&stuj,sizeof(struct student),1,fp);fclose(fp);void modify(struct student stuN) /*修改信息*/FILE *fp; char name10,num15,t5; int i,j,m=0,sum; char ch;if(fp=fopen("MESSAGE.dat","rb")=NULL) printf("無信息"); elseprint_lis

14、t();for(i=0;fread(&stui,sizeof(struct student),1,fp);i+) print_message(i,stu); sum=i; fclose(fp);printf("ttn=<<修改信息>>=n");do m=0;printf("ntt1.按學號修改 2.按姓名修改");printf("nntt*請選擇 <1 或 2> :");scanf("%c",&ch);getchar();if(ch='1')pri

15、ntf("tt輸入要修改的學號:");gets(num); for(i=0;i<=sum;i+) if(strcmp(stui.num,num)=0)print_list();print_message(i,stu); printf("n"); printf("tt輸入新的學號:");gets(stui.num); printf("tt姓名:");gets();printf("tt年齡:");gets(t);stui.age=atoi(t);printf("tt

16、性別:");gets(stui.sex);printf("tt住址:");gets(stui.addr);printf("tt電話:");gets(stui.tel); printf("tt=修改后信息=n");print_list();print_message(i,stu); printf("n"); m=1; if(ch='2') printf("tt輸入要修改的姓名:"); gets(name); for(i=0;i<=sum;i+) if(strcmp(

17、,name)=0) print_list();print_message(i,stu); printf("n"); printf("tt請輸入學號:");gets(stui.num); printf("tt姓名:");gets();printf("tt年齡:");gets(t);stui.age=atoi(t);printf("tt性別:");gets(stui.sex);printf("tt住址:");gets(stui.addr);pr

18、intf("tt電話:");gets(stui.tel); printf("tt=修改后信息=n");print_list();print_message(i,stu); printf("n");m=1; if(m=0)printf("ntt無該學生信息"); printf("ntt是否繼續(xù)(Y or N)? ");scanf("%c",&ch);getchar();while(ch='y'|ch='Y');if(fp=fopen(&q

19、uot;MESSAGE.dat","wb")=NULL) printf("無信息");elsefor(j=0;j<=sum;j+) fwrite(&stuj,sizeof(struct student),1,fp);fclose(fp); void search (struct student stuN) /*查找信息=*/FILE *fp;char ch,k;char xm10,xh15;int i,j=0,sum;int m;if(fp=fopen("MESSAGE.dat","rb")

20、=NULL)printf("無信息");elseprint_list(); for(i=0;fread(&stui,sizeof(struct student),1,fp);i+) print_message(i,stu); sum=i; fclose(fp);do m=0; printf("ttn=<<查找信息>>=n"); printf("ntt1.按學號查找 2.按姓名查找"); printf("nntt*請選擇<1 or 2>:"); scanf("%c

21、",&k);getchar(); printf("tt=<<查找信息>>=n"); if(k='1') printf("tt輸入學號:");gets(xh); for(i=0;i<=sum;i+) if(strcmp(stui.num,xh)=0) print_list();print_message(i,stu); printf("n");m=1; if(k='2')printf("tt輸入姓名:");gets(xm); for(i=

22、0;i<=sum;i+) if(strcmp(,xm)=0) print_list();print_message(i,stu); printf("n");m=1; if(m=0) printf("ntt無該學生信息"); printf("ntt是否繼續(xù)(Y/N)?");scanf ("%c",&ch);getchar();while(ch='Y'|ch='y');void output(struct student stuN) /*輸出信息*/FIL

23、E *fp;int i;if(fp=fopen("MESSAGE.dat","rb")=NULL)printf("無信息");printf("tt=輸出信息=");print_list();for(i=0;fread(&stui,sizeof(struct student ),1,fp);i+) print_message(i,stu);fclose(fp);printf("n按回車返回主菜單");getchar(); void add(struct student stuN) /*添加

24、信息*/FILE *fp;int i=0,j;char ch,t5;if(fp=fopen("MESSAGE.dat","ab")=NULL)printf("無信息");printf("tt=<<添加信息>>=n");do printf("tt輸入學號:");gets(stui.num); printf("tt姓名:");gets();printf("tt年齡:");gets(t);stui.age=atoi(t)

25、;printf("tt性別:");gets(stui.sex);printf("tt住址:");gets(stui.addr);printf("tt電話:");gets(stui.tel); printf("tt是否繼續(xù)(Y/N)?"); ch=getchar(); getchar();i+;while(ch='y'|ch='Y');if(fp=fopen("MESSAGE.dat","ab")=NULL) printf("無信息");elsefor(j=0;j<=i-1;j+)fwrite(&stuj,sizeof(

溫馨提示

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

評論

0/150

提交評論