




版權說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權,請進行舉報或認領
文檔簡介
第C語言實現(xiàn)學生學籍管理系統(tǒng)程序設計本文實例為大家分享了C語言實現(xiàn)學生學籍管理系統(tǒng)的具體代碼,供大家參考,具體內(nèi)容如下
一、題目設計及其要求
1、題目:學生學籍管理系統(tǒng)
用數(shù)據(jù)文件存放學生的學籍,可對學生學籍進行注冊、修改、查找、統(tǒng)計、學籍變化等操作。(用文件保存)
2、功能要求:
(1)系統(tǒng)以菜單方式工作;
(2)登記學生的學號,姓名,性別,年齡,籍貫,學院,專業(yè),班級;
(3)修改已知學號的學生信息;
(4)查找已知學號的學生信息;
(5)按學號和專業(yè)輸出學生籍貫表;
(6)查詢學生學籍變化,比如入學,轉(zhuǎn)專業(yè),退學,降級,休學,畢業(yè)。
二、設計平臺
VisualC++6.0
三、設計思路及過程
1、初步完成總體結(jié)構(gòu)設計,主要運用結(jié)構(gòu)體及函數(shù)調(diào)用的知識設計程序框架,根據(jù)功能確定函數(shù)個數(shù)及儲備每個功能所需的知識;
2、創(chuàng)建工程,同時在工程路徑下創(chuàng)建記事本保存文件數(shù)據(jù),寫出程序的主要框架;
3、寫主函數(shù)以及被調(diào)用函數(shù),完成上述登記、修改、查找、輸出學生信息等功能;
4、調(diào)試代碼,不斷修改以達到運行成功和取得最佳效果。
四、運行結(jié)果
(1)系統(tǒng)以菜單方式工作
(2)登記學生的學號、姓名、性別、年齡、籍貫、學院、專業(yè)、班級,并用文件保存
(3)修改已知學號的學生信息
(4)查找已知學號的學生信息
(5)按學號和專業(yè)輸出學生籍貫表
(6)查詢學生學籍變化,比如入學、轉(zhuǎn)專業(yè)、退學、降級、休學、畢業(yè)
(7)退出系統(tǒng)
五、程序代碼
#includestdio.h
#includestdlib.h
#includestring.h
//頭文件
#defineLEN20
//學號和姓名最大字符數(shù),20
#defineN50
//最大的學生人數(shù)
intM=0;//當前已經(jīng)有的學生數(shù)量
//函數(shù)聲明
voidinsert();
//錄入學生信息
voidmodify();
//修改學生信息
voidsearch();
//查詢學生信息
voidmenu();
//主菜單函數(shù)
voidsave();
//保存學生信息
voidjiguanbiao();
//輸出學生籍貫信息
voidxueji();
//查詢學生學籍變化信息
//結(jié)構(gòu)體保存學生信息
structstudent{
longintId;
//學號
charName[LEN+1];
//姓名
charSex[LEN+1];
//性別
int
Age;
//年齡
charBirthPlace[LEN+1];
//籍貫
charYuanXi[LEN+1];
//院系
charZhuanYe[LEN+1];
//專業(yè)
int
BanJi;
//班級
charxueji[LEN+1];//學籍變化信息
}stu[N];
//主函數(shù)
intmain()
while(1)
{
menu();
}
system("pause");
return0;
voidmenu()//菜單函數(shù)
intnum;
printf("\n");
printf("——————————————————————————\n");
printf("*************歡迎使用學生信息管理系統(tǒng)***************\n");
printf("*
*\n");
printf("********************系統(tǒng)功能菜單********************\n");
printf("*
*\n");
printf("*
1.添加學生信息
*\n");
printf("*
2.修改學生信息
*\n");
printf("*
3.查找學生信息
*\n");
printf("*
4.輸出學生籍貫表
*\n");
printf("*
5.保存信息到文件
*\n");
printf("*
6.查看學生學籍變化
*\n");
printf("*
7.退出系統(tǒng)
*\n");
printf("——————————————————————————\n");
printf("請選擇菜單編號:");
scanf("%d",num);
switch(num)
{
case1:
printf("Inputstudentnumber(M=50):\n");
scanf("%d",
insert();
break;
case2:
modify();
break;
case3:
search();
break;
case4:
jiguanbiao();
break;
case5:
save();
break;
case6:
xueji();
break;
case7:
printf("退出程序成功!\n");
exit(0);
default:
printf("請在1-8之間選擇\n");
system("pause");//提示完成之后顯示按任意鍵繼續(xù)
}
voidinsert()//添加學生信息
{
inti;
for(i=1;ii++)
{
printf("請輸入第%d個學生的學號:",i);
scanf("%ld",stu[i].Id);
printf("請輸入第%d個學生的姓名:",i);
scanf("%s",stu[i].Name);
printf("請輸入第%d個學生的性別:",i);
scanf("%s",stu[i].Sex);
printf("請輸入第%d個學生的年齡:",i);
scanf("%d",stu[i].Age);
printf("請輸入第%d個學生的籍貫:",i);
scanf("%s",stu[i].BirthPlace);
printf("請輸入第%d個學生的學院:",i);
scanf("%s",stu[i].YuanXi);
printf("請輸入第%d個學生的專業(yè):",i);
scanf("%s",stu[i].ZhuanYe);
printf("請輸入第%d個學生的班級:",i);
scanf("%d",stu[i].BanJi);
printf("請輸入第%d個學生的學籍(如入學、轉(zhuǎn)專業(yè)、退學、降級、休學、畢業(yè)):",i);
scanf("%s",stu[i].xueji);
}
printf("學生信息添加完畢!請立即保存數(shù)據(jù)信息到文件!");
}
voidmodify()//修改學生信息
{
inti,item;
longinta;
printf("請輸入要修改學生的學號:\n");
scanf("%ld",
for(i=1;ii++)
{
if(stu[i].Id==a)
{
printf("1.修改名字:\n");
printf("2.修改性別:\n");
printf("3.修改年齡:\n");
printf("4.修改籍貫:\n");
printf("5.修改學院:\n");
printf("6.修改專業(yè):\n");
printf("7.修改班級:\n");
printf("8.修改學籍\n");
printf("0.Endofprogram!\n");
while(1)
{
printf("pleasechoose:");
scanf("%d",item);
switch(item)
{
case1:
printf("Pleaseinputnewname:\n");
scanf("%s",stu[i].Name);
break;
case2:
printf("Pleaseinputsex:\n");
scanf("%s",stu[i].Sex);
break;
case3:
printf("Pleaseinputnewage:\n");
scanf("%d",stu[i].Age);
break;
case4:
printf("PleaseinputBirthPlace:\n");
scanf("%s",stu[i].BirthPlace);
break;
case5:
printf("Pleaseinputnewyuanxi:\n");
scanf("%s",stu[i].YuanXi);
break;
case6:
printf("Pleaseinputnewzhuanye:\n");
scanf("%s",stu[i].ZhuanYe);
break;
case7:
printf("Pleaseinputnewbanji:\n");
scanf("%d",stu[i].BanJi);
break;
case8:
printf("Pleaseinputnewxueji:\n");
scanf("%s",stu[i].xueji);
break;
default:printf("Inputerror!\n");
}
if(item==0)
break;
}
}
}
voidsearch()
//查找已知學號的學生信息
longintb,term=-1;
inti;
printf("請輸入要查找學生的學號:");
scanf("%ld",
for(i=1;ii++)
{
if(stu[i].Id==b)
{
printf("學號:%ld
姓名:%s
性別:%s
年齡:%d
籍貫:%s
學院:%s
專業(yè):%s
班級:%d
學籍:%s
\n",stu[i].Id,stu[i].Name,stu[i].Sex,stu[i].Age,stu[i].BirthPlace,stu[i].YuanXi,stu[i].ZhuanYe,stu[i].BanJi,stu[i].xueji);
term=-2;
}
}
if(term!=-2)
{
printf("Notfound!\n");
}
voidjiguanbiao()//按學號和專業(yè)輸出學生籍貫表
{
inti;
FILE*fp;
fp=fopen("student.txt","r");
printf("********************學生籍貫表*********************\n");
printf("學號
姓名
籍貫\n");
for(i=1;ii++)
{
printf("%ld
%s
%s\n",stu[i].Id,stu[i].Name,stu[i].BirthPlace);
}
fclose(fp);
}
voidsave()//保存學生信息到文件
{
inti;
FILE*fp;
fp=fopen("student.txt","w");//在工程路徑下創(chuàng)建名為“student.txt”的記事本
for(i=
溫馨提示
- 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. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 醫(yī)療設備消毒與口腔科感染防控
- 全球醫(yī)療器戒市場競爭環(huán)境下的企業(yè)戰(zhàn)略調(diào)整與創(chuàng)新策略研究
- 區(qū)塊鏈在文物溯源與防偽中的應用
- 死因監(jiān)測培訓總結(jié)模版
- 醫(yī)療信息化系統(tǒng)中的數(shù)據(jù)交互與共享技術
- 醫(yī)療大數(shù)據(jù)在疾病預防控制中的創(chuàng)新應用
- 公司安全工作總結(jié)模版
- 醫(yī)療大數(shù)據(jù)在疫情防控中的作用
- 中藥顆粒銷售合同范例
- 以醫(yī)療教育為核心構(gòu)建安全透明的醫(yī)學用品供應鏈體系
- 博士生入學復試面試報告?zhèn)€人簡歷介紹(完美版)模板兩篇
- 停車場運營維護管理投標方案(技術標)
- 工業(yè)硅行業(yè)可行性研究報告
- 水生態(tài)修復與保護概述
- 《小餐飲登記證》申請書
- 水暖工培訓教材課件
- 神奇糖果店課件
- 年產(chǎn)30萬噸苯乙烯車間粗苯乙烯精餾工段的工藝設計畢業(yè)論文
- 精編中學生廉潔教育教案課件
- 結(jié)腸鏡單人操作法插入技術與技巧模板
- 膝關節(jié)體格檢查
評論
0/150
提交評論