已閱讀5頁(yè),還剩15頁(yè)未讀, 繼續(xù)免費(fèi)閱讀
版權(quán)說(shuō)明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
學(xué)生信息管理系統(tǒng)#include#include#include#include#include#define LEN sizeof(struct student)#define FORMAT %-12d%-12s%-13.1f%-13.1f%-13.1f%-13.1fn#define DATA stui.num,,stui.chinese,stui.math,stui.english,stui.sum/*定義學(xué)生成績(jī)結(jié)構(gòu)體*/struct studentint num;char name15;float chinese;float math;float english;float sum;struct student stu50;/*函數(shù)聲明與簡(jiǎn)介*/void input();void show();void order();void del();void modify();void menu();void insert();void total();void search();int chcode();/*主函數(shù)*/int main()int n;int login = chcode();if(!login)printf(登錄失敗!n);return 0;printf(登錄成功!n);menu();scanf(%d,&n);while(n)switch(n) case 0: exit(0);case 1: input();break; case 2: search();break; case 3: del();break; case 4: modify();break; case 5: insert();break; case 6: order();break; case 7: total();break; case 8: show();break; default:printf(輸入有誤,請(qǐng)重新輸入:);break;getch();menu();scanf(%d,&n);return 0;/*自定義函數(shù)實(shí)現(xiàn)菜單功能*/void menu()system(cls);printf(tt|-學(xué)生信息系統(tǒng)-|n);printf(tt| |n);printf(tt| 0. 退出系統(tǒng)ttt |n);printf(tt| 1. 輸入記錄ttt |n);printf(tt| 2. 查找記錄ttt |n);printf(tt| 3. 刪除記錄ttt |n);printf(tt| 4. 修改記錄ttt |n);printf(tt| 5. 插入記錄ttt |n);printf(tt| 6. 記錄排序ttt |n);printf(tt| 7. 記錄個(gè)數(shù)ttt |n);printf(tt| 8. 顯示記錄ttt |n);printf(tt|-|nn);printf(tt請(qǐng)輸入你的操作(0-8):);/*錄入學(xué)生信息*/void input()int i,m=0;char ch2;FILE *fp;/*定義指針文件*/if(fp=fopen(stuData.tet,a+)=NULL)printf(打開文件失敗n);return;while(!feof(fp)if(fread(&stum,LEN,1,fp)=1)m+;fclose(fp);if(m=0)printf(沒(méi)有數(shù)據(jù)!n);elsesystem(cls);show();if(fp=fopen(stuData.txt,wb)=NULL)printf(打開文件失敗n);return;for(i=0;im;i+)fwrite(&stui,LEN,1,fp);printf(請(qǐng)確認(rèn)(y/n):);scanf(%s,ch);while(strcmp(ch,Y)=0|strcmp(ch,y)=0)printf(學(xué)號(hào):);scanf(%d,&stum.num);for(i=0;im;i+)if(stui.num=stum.num)printf(此學(xué)號(hào)已存在!);getch();fclose(fp);return;printf(姓名:);scanf(%s,);printf(語(yǔ)文成績(jī):);scanf(%f,&stum.chinese);printf(數(shù)學(xué)成績(jī):);scanf(%f,&stum.math);printf(英語(yǔ)成績(jī):);scanf(%f,&stum.english);stum.sum=stum.chinese+stum.math+stum.english;if(fwrite(&stum,LEN,1,fp)!=1)printf(保存失??!);getch();elseprintf(%s 已保存!n,);m+;printf(是否繼續(xù)?(y/n):);scanf(%s,ch);fclose(fp);printf(操作成功!n);/*自定義查找*/void search()FILE *fp;int snum,i,m=0;char ch2;if(fp=fopen(stuData.txt,rb)=NULL)printf(打開文件失敗n);return;while(!feof(fp)if(fread(&stum,LEN,1,fp)=1)m+;fclose(fp);if(m=0)printf(文件無(wú)記錄!n);return;printf(請(qǐng)輸入需要查找的學(xué)生學(xué)號(hào):);scanf(%d,&snum);for(i=0;im;i+)if(snum=stui.num)printf(學(xué)生數(shù)據(jù)已找到,確認(rèn)顯示?(y/n));scanf(%s,ch);if(strcmp(ch,Y)=0|strcmp(ch,y)=0)printf(學(xué)號(hào) 姓名 語(yǔ)文 數(shù)學(xué) 英語(yǔ) 總分tn);printf(FORMAT,DATA);break;if(i=m)printf(查找失?。); /*自定義刪除*/void del()FILE*fp;int snum,i,j,m=0;char ch2;if(fp=fopen(stuData.tet,r+)=NULL)printf(打開文件失敗n);return;while(!feof(fp)if(fread(&stum,LEN,1,fp)=1)m+;fclose(fp);if(m=0)printf(文件無(wú)記錄!n);return;show();printf(請(qǐng)輸入需要?jiǎng)h除的學(xué)生學(xué)號(hào):);scanf(%d,&snum);for(i=0;im;i+)if(snum=stui.num)printf(數(shù)據(jù)已經(jīng)找到,是否確認(rèn)刪除?(y/n);scanf(%s,ch);if(strcmp(ch,Y)=0|strcmp(ch,y)=0)for(j=i;jm;j+)stuj=stui;m-;if(fp=fopen(stuData.txt,wb)=NULL)printf(打開文件失敗n);return;for(j=0;jm;j+)if(fwrite(&stuj,LEN,1,fp)!=1)printf(對(duì)不起,保存失??!n);getch();fclose(fp);printf(刪除成功!n);return;elseprintf(取消刪除!n);return;printf(沒(méi)有找到要?jiǎng)h除的信息!n);/*自定義修改函數(shù)*/void modify()FILE *fp;int i,j,m=0,snum;if(fp=fopen(stuData.txt,r+)=NULL)printf(打開文件失敗n);return;while(!feof(fp)if(fread(&stum,LEN,1,fp)=1)m+;if(m=0)printf(文件無(wú)記錄!n);fclose(fp);return;show();printf(請(qǐng)輸入你要修改的的學(xué)生學(xué)號(hào)n);printf(學(xué)號(hào)是:);scanf(%d,&snum);for(i=0;im;i+)if(snum=stui.sum)printf(學(xué)生數(shù)據(jù)已找到,請(qǐng)修改!n);printf(name);scanf(%s,);printf(chinese);scanf(%f,&stui.chinese);printf(math:);scanf(%f,&stui.chinese);printf(english:);scanf(%f,&stui.english);printf(modify successful!);stui.sum=stui.chinese+stui.math+stui.english;if(fp=fopen(stuData.txt,wb)=NULL)printf(保存失?。?;getch();fclose(fp);return;printf(沒(méi)有找到匹配信息);/*自定義插入函數(shù)*/void insert()FILE *fp;int i,j,k,m=0,snum;if(fp=fopen(stuData.txt,r+)=NULL)printf(打開文件失敗n);return;while(!feof(fp)if(fread(&stum,LEN,1,fp)=1)m+;if(m=0)printf(沒(méi)有數(shù)據(jù)!n);fclose(fp);return;printf(請(qǐng)輸入數(shù)據(jù)插入的位置:n);scanf(%d,&snum);for(i=0;ii;j-)stuj+i=stuj;printf(請(qǐng)輸入待插入數(shù)據(jù)信息.n);printf(學(xué)號(hào));scanf(%d,&stui+1.num);for(k=0;km;k+)if(stuk.num=stum.num)printf(此學(xué)號(hào)已存在!);getch();fclose(fp);return;printf(姓名);scanf(%s,stui+1.name);printf(語(yǔ)文成績(jī):);scanf(%f,&stui+1.chinese);printf(數(shù)學(xué)成績(jī):);scanf(%f,&stui+1.math);printf(英語(yǔ)成績(jī):);scanf(%f,&stui+1.english);stui+1.sum=stui+1.chinese+stui+1.math+stui+1.english;if(fp=fopen(stuData.txt,wb)=NULL)printf(打開文件失敗n);return;for(k=0;k=m;k+)if(fwrite(&stuk,LEN,1,fp)!=1)printf(保存失敗!);getch();return;printf(插入函數(shù)成功!);getch();fclose(fp);/*自定義排序函數(shù)*/void order()FILE *fp;struct student t;int i=0,j=0,m=0;if(fp=fopen(stuData.txt,r+)=NULL)printf(打開文件失?。);return;while(!feof(fp)if(fread(&stum,LEN,1,fp)=1)m+;fclose(fp);if(m=0)printf(無(wú)記錄!n);return;if(fp=fopen(stuData.txt,wb)=NULL)printf(打開文件失敗n);return;for(i=0;im-1;i+)if(fwrite(&stui,LEN,1,fp)!=1)printf(%s 保存失??!n);getch();fclose(fp);printf(操作成功n);/*顯示學(xué)生總?cè)藬?shù)*/void total()FILE *fp;int m=0;if(fp=fopen(stuData.txt,r+)=NULL)printf(打開文件失敗n);return;while(!feof(fp)if(fread(&stum,LEN,1,fp)=1)m+;if(m=0)printf(文件無(wú)記錄!n);fclose(fp);return;printf(學(xué)生總數(shù)為 %d 位!n,m);fclose(fp);/*顯示學(xué)生信息*/void show()FILE *fp;int i,m=0;fp=fopen(stuData.txt,rb);while(!feof(fp)if(fread(&stum,LEN,1,fp)=1)m+;fclose(fp);printf(學(xué)號(hào) 姓名 語(yǔ)文 數(shù)學(xué) 英語(yǔ) 總分tn);for(i=0;im;i+)printf(FORMAT,DATA);int chcode() char pw50,ch;c
溫馨提示
- 1. 本站所有資源如無(wú)特殊說(shuō)明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁(yè)內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒(méi)有圖紙預(yù)覽就沒(méi)有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫(kù)網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 軍事行業(yè)安全工作總結(jié)
- 構(gòu)建良好班級(jí)氛圍的培訓(xùn)總結(jié)
- 《新腦血管病的預(yù)防》課件
- 2024年江蘇省泰州市公開招聘警務(wù)輔助人員輔警筆試自考題2卷含答案
- 2022年江西省景德鎮(zhèn)市公開招聘警務(wù)輔助人員輔警筆試自考題1卷含答案
- 2021年青海省西寧市公開招聘警務(wù)輔助人員輔警筆試自考題2卷含答案
- 2023年湖北省宜昌市公開招聘警務(wù)輔助人員輔警筆試自考題2卷含答案
- 2022年河南省洛陽(yáng)市公開招聘警務(wù)輔助人員輔警筆試自考題1卷含答案
- 2024年云南省麗江市公開招聘警務(wù)輔助人員輔警筆試自考題1卷含答案
- 《危險(xiǎn)貨物運(yùn)輸包裝》課件
- 2024年人力資源年度工作總結(jié)參考(2篇)
- DB52T 1776.1-2023 耕地質(zhì)量等別評(píng)價(jià) 第1部分:評(píng)價(jià)規(guī)范
- 社工個(gè)人工作述職報(bào)告
- 《人力資源管理》大學(xué)期末測(cè)試題庫(kù)500題(含答案)
- 加盟店鋪轉(zhuǎn)手合同
- 領(lǐng)導(dǎo)年終總結(jié)匯報(bào)工作
- CQI-23模塑系統(tǒng)評(píng)估審核表-中英文
- 2024年大型游樂(lè)設(shè)施操作(Y2)特種作業(yè)取證(廣東)考試復(fù)習(xí)題庫(kù)(含答案)
- 《顱內(nèi)壓增高的臨床表現(xiàn)》教學(xué)課件
- 2024-2025學(xué)年北師大版九年級(jí)數(shù)學(xué)上冊(cè)期中培優(yōu)試題
- 《建筑工程設(shè)計(jì)文件編制深度規(guī)定》(2022年版)
評(píng)論
0/150
提交評(píng)論