課程設(shè)計報告學(xué)生信息管理系統(tǒng)_第1頁
課程設(shè)計報告學(xué)生信息管理系統(tǒng)_第2頁
課程設(shè)計報告學(xué)生信息管理系統(tǒng)_第3頁
課程設(shè)計報告學(xué)生信息管理系統(tǒng)_第4頁
課程設(shè)計報告學(xué)生信息管理系統(tǒng)_第5頁
已閱讀5頁,還剩12頁未讀, 繼續(xù)免費閱讀

下載本文檔

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

文檔簡介

1、商洛學(xué)院C語言課程設(shè)計報告題目:學(xué)生信息管理系統(tǒng)院系名稱:計算機科學(xué)系專業(yè)名稱:信息管理與信息系統(tǒng)指導(dǎo)老師:趙國強小組成員:張少勃,張煌,李榮貴,楊鵬坤,李橋一. 設(shè)計目的1. 通過本次試驗,能更好的對鏈表結(jié)構(gòu)體、部分的相關(guān)知識有一個系統(tǒng)的復(fù)習(xí)和提高。2. 從實驗中找出自己在對整體程序設(shè)計上的缺陷,并在以后加以改進。二. 設(shè)計內(nèi)容 編寫學(xué)生信息管理系統(tǒng),包含數(shù)據(jù)的插入、顯示、修改、刪除、查找,文件的讀寫。三概要設(shè)計1功能模塊圖(1)用戶進入模塊(2) 主菜單(3) 插入模塊當(dāng)用戶輸入選擇使用的功能為 1時,進入插入功能顯示如下界面:在輸入完成后按enter鍵顯示如下:輸入y則繼續(xù)輸入,輸入n則

2、返回主菜單。(4) 查詢模塊當(dāng)用戶輸入選擇使用的功能為 2時,進入查詢功能顯示如下界面:輸入學(xué)號 1則顯示:按enter 返回主菜單。(5)顯示模塊當(dāng)用戶輸入選擇使用的功能為 3時,進入顯示所有信息功能顯示如下界面:按enter 鍵返回主菜單。(6) 刪除模塊當(dāng)用戶輸入選擇使用的功能為 4時,進入刪除功能顯示如下界面:輸入要刪除的學(xué)號信息,按enter 鍵,系統(tǒng)就會進行刪除信息,刪除成功后顯示如下:按enter鍵返回主菜單。(7) 修改模塊當(dāng)用戶輸入選擇使用的功能為 5時,進入修改功能顯示如下界面:修改完成后輸入n返回主菜單,按y繼續(xù)修改。(8)退出若要退出,在主菜單界面輸入 6 則會退出本系

3、統(tǒng)。2各個模塊詳細的功能描述。(1) 用戶進入界面:每次都進入必須輸入密碼才能進入主菜單。(2) 主菜單:通過數(shù)據(jù)的錄入(或打開存儲的文件)實現(xiàn)信息的修改、插入、刪除、查找,然后打印輸出。四詳細設(shè)計主函數(shù)1功能函數(shù)的調(diào)用關(guān)系圖用戶登錄主菜單顯示信息修改信息插入信息查詢信息刪除信息通過學(xué)號刪除通過學(xué)號修改通過學(xué)號查詢2重點設(shè)計及編碼1.密碼輸入:相關(guān)代碼:void first() int i;doprintf("*學(xué)生信息管理系統(tǒng)中*n"); printf("*系統(tǒng)初始化*n"); printf("初始密碼:");scanf("

4、;%d",&i); fflush(stdin); system("cls");while(i!=123);2.插入信息:相關(guān)代碼:void insert(int count,struct stu st) char b; printf("ttt學(xué)生信息添加n"); for(;b!='n') if(n=30) printf("滿員無法添加"); break;system("cls"); printf("nttt請輸入學(xué)號:"); scanf("%d&quo

5、t;,&stn.num); printf("nttt請輸入姓名:"); scanf("%s",); printf("nttt請輸入性別:"); scanf("%s",stn.sex); printf("nttt請輸入家庭住址:"); scanf("%s",stn.add); n+; printf("ttt是否繼續(xù)yn:");fflush(stdin); scanf("%c",&b);system(&quo

6、t;cls"); fflush(stdin); while(b!='y') if(b='n')break; if(b!='y')printf("ntttyn"); scanf("%c",&b); fflush(stdin); ; fflush(stdin); printf("ttt返回功能菜單");3.查詢信息相關(guān)代碼:void quer(struct stu st)int m=1; int t; int x; x=0; printf("tttt請輸入要查詢的

7、學(xué)號:"); scanf("%d",&t); system("cls"); for(x=0;x<=30;x+) if(stx.num=t) head(); printf("%dt%st%st%sn",stx.num,,stx.sex,stx.add);m=0;if(m=1)printf("tt無查詢信息"); fflush(stdin); 4.顯示信息在主菜單上輸入3時進入,則顯示所有插入的信息。相關(guān)代碼:void disp(int count,struct stu st)

8、int j=0; system("cls"); head(); for(;j<n;j+)printf("%dt%st%st%sn",stj.num,,stj.sex,stj.add); 5.刪除信息相關(guān)代碼:void del(struct stu st) int m=1; int t; int x; int x1; x=0; printf("ttt請輸入要刪除的學(xué)生的學(xué)號:"); scanf("%d",&t); for(x=0;x<=n&&m;x+) if(stx

9、.num=t) for(x1=x;x1<=n;x1+) stx1=stx1+1;m=0; printf("已刪除該信息n"); n-; if(m=1)printf("無需要刪除的信息n"); fflush(stdin); 6.修改信息。相關(guān)代碼:void del(struct stu st) int m=1; int t; int x; int x1; x=0; printf("ttt請輸入要刪除的學(xué)生的學(xué)號:"); scanf("%d",&t); for(x=0;x<=n&&m

10、;x+) if(stx.num=t) for(x1=x;x1<=n;x1+) stx1=stx1+1;m=0; printf("已刪除該信息n"); n-; if(m=1)printf("無需要刪除的信息n"); fflush(stdin); 五測試數(shù)據(jù)及運行結(jié)果(1) 插入信息(打開文件)進入插入界面輸入圖上內(nèi)容。按n選擇退出。(2)查找信息在選擇菜單上輸入2 彈出讓用戶輸入要查找的學(xué)號信息。在輸入后按enter 鍵會出現(xiàn)如下界面:(3)顯示信息在選擇菜單上輸入3 按回車鍵會顯示系統(tǒng)存儲的所有的信息。(4) 刪除信息在主菜單上輸入4后會有提示讓用

11、戶輸入要刪除的學(xué)號信息,輸入后則會刪除該學(xué)號的相關(guān)所有信息。檢查時進入 查看信息 功能,進入后則沒有顯示該學(xué)號的相關(guān)信息。(5) 修改信息修改后進入 查看信息 功能 ,打印出的數(shù)據(jù)中沒有修改前的信息。六調(diào)試情況,設(shè)計技巧及體會 好的方面,界面之間的轉(zhuǎn)換,盡量減少了系統(tǒng)的缺陷,提示語句人性化,便于使用函數(shù)的調(diào)用及返回值,系統(tǒng)設(shè)置密碼可以保護用戶的信息不外泄。 但是,程序可讀性不太高,注釋說明語句太少,程序做出來是給別人使用的,以后的學(xué)習(xí)中應(yīng)該注意。七附錄 (電子版源代碼)#include "stdio.h"#include "string.h"#inclu

12、de "stdlib.h"#include "windows.h"void enter();int readdata();void stra();int save();void disp(int,struct stu st);void quer(struct stu st);void insert(int ,struct stu st);void del(struct stu st);void modfix(struct stu st);void head();void restra();saveflag=0;struct stu int num; ch

13、ar name30; char sex4; char add40;int n=0;struct stu st30,*p=st;FILE *fp;int main()enter();readdata();stra();save();fclose(fp);return 0; void enter() int i;doprintf("*學(xué)生信息管理系統(tǒng)中*n"); printf("*系統(tǒng)初始化*n"); printf("初始密碼:");scanf("%d",&i); fflush(stdin); system(&

14、quot;cls");while(i!=123);int readdata()FILE *fp;if(fp=fopen("stdata.txt","r")=NULL)printf("數(shù)據(jù)文件無法打開,請檢查數(shù)據(jù)文件。n");return 0;while(!feof(fp)fscanf(fp,"%dt%st%st%sn",&stn.num,,stn.sex,stn.add);n+;fclose(fp); return 1;int save() /保存數(shù)據(jù) int q;if(fp=fo

15、pen("stdata.txt","w")=NULL) printf("ttt文件無法打開n"); return 0;for(q=0;q<n;q+) fprintf(fp,"%dt%st%st%sn",stq.num,,stq.sex,stq.add); fclose(fp); return 1;void stra() int i;char c;do for(i=0;i<5;i+)printf("n"); printf("n"); restra()

16、; printf("*n"); restra(); printf("* 歡迎使用學(xué)生信息查詢系統(tǒng) *n"); restra(); printf("* _*n"); restra(); printf("* 1.插入信息 2. 查詢信息 *n"); restra(); printf("* 3.顯示信息 4. 刪除信息 *n"); restra(); printf("* 5.修改信息 6. 退出系統(tǒng) *n"); restra(); printf("* *n");

17、 restra(); printf("*n"); restra(); printf("選擇使用的功能"); scanf("%c",&c); fflush(stdin); switch(c) case '1':restra();printf("功能1n"); insert(n,p); save(p); getchar();break; case '2':restra();printf("功能2n"); quer(p); getchar();break; ca

18、se '3':restra();printf("功能3n"); disp(n,p); getchar();break; case '4':restra();printf("功能4n"); del(p); save(); getchar();break; case '5':restra();printf("功能5n"); modfix(p); save(); getchar();break; case '6':printf("n");restra();p

19、rintf("您選擇了退出本系統(tǒng)!n謝謝使用您的使用!"); break; system("cls"); while(c!='6');if(c='6') int k;printf("n"); restra(); if(saveflag=1) fflush(stdin); printf("學(xué)生數(shù)據(jù)已經(jīng)改動,是否保存【y/n】:"); k=getchar(); fflush(stdin); if(k='y') save(st); printf("ntt數(shù)據(jù)保存成

20、功!謝謝使用本系統(tǒng)!"); void restra() int i;for(i=0;i<=1;i+)printf("t");void disp(int count,struct stu st) int j=0; system("cls"); head(); for(;j<n;j+)printf("%dt%st%st%sn",stj.num,,stj.sex,stj.add); void quer(struct stu st)int m=1; int t; int x; x=0; printf(&q

21、uot;tttt請輸入要查詢的學(xué)號:"); scanf("%d",&t); system("cls"); for(x=0;x<=30;x+) if(stx.num=t) head(); printf("%dt%st%st%sn",stx.num,,stx.sex,stx.add);m=0;if(m=1)printf("tt無查詢信息"); fflush(stdin); void insert(int count,struct stu st) char b; printf(&q

22、uot;ttt學(xué)生信息添加n"); for(;b!='n') if(n=30) printf("滿員無法添加"); break;system("cls"); printf("nttt請輸入學(xué)號:"); scanf("%d",&stn.num); printf("nttt請輸入姓名:"); scanf("%s",); printf("nttt請輸入性別:"); scanf("%s",stn

23、.sex); printf("nttt請輸入家庭住址:"); scanf("%s",stn.add); n+;saveflag=1; printf("ttt是否繼續(xù)yn:");fflush(stdin); scanf("%c",&b);system("cls"); fflush(stdin); while(b!='y') if(b='n')break; if(b!='y')printf("ntttyn"); scanf("%c",&b); fflush(stdin); ; fflush(stdin); printf("ttt返回功能菜單");void del(struct stu st) int m=1; int t; int x; int x1; x=0; printf("ttt請輸入要刪除的學(xué)生的學(xué)號:"); scanf("%d",&t); for(x=0

溫馨提示

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

評論

0/150

提交評論