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

下載本文檔

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

文檔簡介

1、#include /*I/O函數(shù)*/#include /*其它說明*/#include /*字符串函數(shù)*/#define BUFLEN 100 /* 緩沖區(qū)最大字符數(shù)*/#define LEN 15 /* 學號和姓名最大字符數(shù),實際請更改*/#define N 100 /* 最大學生人數(shù),實際請更改*/struct record /*結構體*/char codeLEN+1; /* 學號*/char nameLEN+1; /* 姓名*/int age; /* 年齡*/char sex3; /* 性別*/char timeLEN+1; /* 出生年月*/char add30; /* 家庭地址*/c

2、har telLEN+1; /* 電話號碼*/char mail30; /* 電子郵件地址*/stuN;int k=1,n,m; /* 定義全局變量*/ void readfile();/* 函數(shù)聲明*/void seek();void modify();void insert();void del();void display();void save();void menu(); int main() while(k)menu();system(pause);return 0; void help() printf(n0.歡迎使用系統(tǒng)幫助!n);printf(n1.進入系統(tǒng)后,先刷新學生信息

3、,再查詢;n);printf(n2.按照菜單提示鍵入數(shù)字代號;n);printf(n3.增加學生信息后,切記保存按;n);printf(n4.謝謝您的使用!n); void readfile()/* 建立信息*/char *p=student.txt;FILE *fp;int i=0;if (fp=fopen(student.txt,r)=NULL) printf(Open file %s error! Strike any key to exit!,p);system(pause);exit(0);while(fscanf(fp,%s %s%d%s %s %s %s %s,stui.code

4、,,&stui.age,stui.sex,stui.time,stui.add,stui.tel,stui.mail)=8)i+;i=i;fclose(fp);n=i;printf(錄入完畢!n); void seek() /*查找*/int i,item,flag;char s121; /* 以姓名和學號最長長度+1為準*/printf(-n);printf(-1.按學號查詢-n);printf(-2.按姓名查詢-n);printf(-3.退出本菜單-n);printf(-n);while(1)printf(請選擇子菜單編號:);scanf(%d,&item);flag=0

5、;switch(item)case 1:printf(請輸入要查詢的學生的學號:n);scanf(%s,s1);for(i=0;in;i+)if(strcmp(stui.code,s1)=0)flag=1;printf(學生學號 學生姓名 年齡 性別 出生年月 地址 電話 E-mailn);printf(-n);printf(%6s %7s %6d %5s %9s %8s %10s %14sn,stui.code,,stui.age,stui.sex,stui.time,stui.add,stui.tel,stui.mail);if(flag=0)printf(該學號不存在!

6、n); break;case 2:printf(請輸入要查詢的學生的姓名:n);scanf(%s,s1);for(i=0;in;i+)if(strcmp(,s1)=0)flag=1;printf(學生學號 學生姓名 年齡 性別 出生年月 地址 電話 E-mailn);printf(-n);printf(%6s %7s %6d %5s %9s %8s %10s %14sn,stui.code,,stui.age,stui.sex,stui.time,stui.add,stui.tel,stui.mail);if(flag=0)printf(該姓名不存在!n);

7、 break;case 3:return;default:printf(請在-3之間選擇n); void modify() /*修改信息*/int i,item,num;char sex13,s1LEN+1,s2LEN+1; /* 以姓名和學號最長長度+1為準*/printf(請輸入要要修改的學生的學號:n);scanf(%s,s1);for(i=0;in;i+)if(strcmp(stui.code,s1)=0) /*比較字符串是否相等*/num=i;printf(-n);printf(1.修改姓名n);printf(2.修改年齡n);printf(3.修改性別n);printf(4.修改出

8、生年月n);printf(5.修改地址n);printf(6.修改電話號碼n);printf(7.修改E-mail地址n);printf(8.退出本菜單n);printf(-n);while(1)printf(請選擇子菜單編號:);scanf(%d,&item);switch(item)case 1:printf(請輸入新的姓名:n);scanf(%s,s2);strcpy(,s2); break;case 2:printf(請輸入新的年齡:n);scanf(%d,&stunum.age);break;case 3:printf(請輸入新的性別:n);scanf(%s,s

9、ex1);strcpy(stunum.sex,sex1); break;case 4:printf(請輸入新的出生年月:n);scanf(%s,s2);strcpy(stunum.time,s2); break;case 5:printf(請輸入新的地址:n);scanf(%s,s2);strcpy(stunum.add,s2); break;case 6:printf(請輸入新的電話號碼:n);scanf(%s,s2);strcpy(stunum.tel,s2); break;case 7:printf(請輸入新的E-mail地址:n);scanf(%s,s2);strcpy(stunum.

10、mail,s2); break;case 8:return;default:printf(請在-8之間選擇n); void sort()/*按學號排序*/int i,j,*p,*q,s; char temp10;for(i=0;ii;j-)if(strcmp(stuj-1.code,stuj.code)0)strcpy(temp,stuj-1.code);strcpy(stuj-1.code,stuj.code);strcpy(stuj.code,temp);strcpy(temp,);strcpy(,);strcpy(stuj.n

11、ame,temp);strcpy(temp,stuj-1.sex);strcpy(stuj-1.sex,stuj.sex);strcpy(stuj.sex,temp);strcpy(temp,stuj-1.time);strcpy(stuj-1.time,stuj.time);strcpy(stuj.time,temp);strcpy(temp,stuj-1.add);strcpy(stuj-1.add,stuj.add);strcpy(stuj.add,temp);strcpy(temp,stuj-1.tel);strcpy(stuj-1.tel,stuj.tel);strcpy(stuj.

12、tel,temp);strcpy(temp,stuj-1.mail);strcpy(stuj-1.mail,stuj.mail);strcpy(stuj.mail,temp); p=&stuj-1.age; q=&stuj.age; s=*q; *q=*p; *p=s; void insert() /*插入函數(shù)*/ int i=n,j,flag;printf(請輸入待增加的學生數(shù):n);scanf(%d,&m);do flag=1;while(flag)flag=0;printf(請輸入第%d 個學生的學號:n,i+1);scanf(%s,stui.code);for(j=0;ji;j+)if

13、(strcmp(stui.code,stuj.code)=0)printf(已有該學號,請檢查后重新錄入!n);flag=1;break; /*如有重復立即退出該層循環(huán),提高判斷速度*/printf(請輸入第%d 個學生的姓名:n,i+1);scanf(%s,);printf(請輸入第%d 個學生的年齡:n,i+1);scanf(%d,&stui.age);printf(請輸入第%d 個學生的性別:n,i+1);scanf(%s,stui.sex);printf(請輸入第%d 個學生的出生年月:(格式:年.月)n,i+1);scanf(%s,stui.time);printf

14、(請輸入第%d 個學生的地址:n,i+1);scanf(%s,stui.add);printf(請輸入第%d 個學生的電話:n,i+1);scanf(%s,stui.tel);printf(請輸入第%d 個學生的E-mail:n,i+1);scanf(%s,stui.mail);if(flag=0) i=i;i+;while(in+m);n+=m;printf(錄入完畢!nn);sort(); void del()int i,j,flag=0;char s1LEN+1;printf(請輸入要刪除學生的學號:n);scanf(%s,s1);for(i=0;in;i+)if(strcmp(stui

15、.code,s1)=0) flag=1;for(j=i;jn-1;j+)stuj=stuj+1;if(flag=0)printf(該學號不存在!n);if(flag=1)printf(刪除成功,顯示結果請選擇菜單n);n-; void display() int i;printf(所有學生的信息為:n);printf(學生學號 學生姓名 年齡 性別 出生年月 地址 電話 E-mailn);printf(-n);for(i=0;in;i+) printf(%6s %7s %5d %5s %9s %8s %10s %14sn,stui.code,,stui.age,stui.se

16、x,stui.time,stui.add,stui.tel,stui.mail); void save()int i;FILE *fp;fp=fopen(student.txt,w); /*寫入*/for(i=0;in;i+)fprintf(fp,%s %s %d %s %s %s %s %sn,stui.code,,stui.age,stui.sex,stui.time,stui.add,stui.tel,stui.mail);fclose(fp); void menu()/* 界面*/int num;printf( nn 電信學生信息管理系統(tǒng) nn);printf( *

17、nn);printf( * 制作人:李洋* n n);printf( * nn); printf(*系統(tǒng)功能菜單* n);printf(友情提醒:查詢前請先刷新系統(tǒng)! n);printf( - - n);printf( * n);printf( * 0.系統(tǒng)幫助及說明 * * 1.刷新學生信息 * n);printf( * n); printf( * 2.查詢學生信息 * * 3.修改學生信息 * n);printf( * n);printf( * 4.增加學生信息 * * 5.按學號刪除信息 * n);printf( * n);printf( * 6.顯示當前信息 * * 7.保存當前學生信息* n);printf( * * n);printf( * 8.退出系統(tǒng) * n);printf( * n);p

溫馨提示

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

評論

0/150

提交評論