




版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進行舉報或認領
文檔簡介
第C語言實現(xiàn)學籍管理系統(tǒng)本文實例為大家分享了C語言實現(xiàn)學籍管理系統(tǒng)的具體代碼,供大家參考,具體內(nèi)容如下
設計一個學籍管理系統(tǒng),基本功能包括:
1.輸入學生基本信息
2.查詢學生信息(1.按學號2.按姓名)
3.刪除學生信息(1.按學號2.按姓名)
4.學生信息排序(1.按學號2.按姓名)
5.修改學生基本信息
6.輸出學生信息
7.保存學生信息
0.退出程序
注:由于知識有限,該系統(tǒng)暫時規(guī)定只輸入3個學生數(shù)據(jù),今后會改良成可隨機處理任意多個學生的數(shù)據(jù)
一、首頁
voidenter(structstudentstu[],intn)
intselect;
while(select!=0)
{
printf("\t\t\t
---------------------------\n");
printf("\n");
printf("\t\t\t
歡迎使用學籍管理系統(tǒng)\n");
printf("\n");
printf("\t\t\t
---------------------------\n");
printf("\t\t\t
1.輸入學生基本信息\n");
printf("\t\t\t
2.查詢學生信息(1.按學號2.按姓名)\n");
printf("\t\t\t
3.刪除學生信息(1.按學號2.按姓名)\n");
printf("\t\t\t
4.學生信息排序(1.按學號2.按姓名)\n");
printf("\t\t\t
5.修改學生基本信息\n");
printf("\t\t\t
6.輸出學生信息\n");
printf("\t\t\t
7.保存學生信息\n");
printf("\t\t\t
0.退出程序\n");
printf("\t\t\t
請輸入您的選項");
scanf("%d",select);
system("cls");
switch(select)
{
case1:input(stu,n);break;
case2:seek(stu,n);break;
case3:delect(stu,n);break;
case4:sort(stu,n);break;
case5:revise(stu,n);break;
case6:output(stu,n);break;
case7:keep(stu,n);break;
case0:printf("\t\t\t
您已退出學籍管理系統(tǒng)\n");break;
default:printf("輸入有誤\n");
system("pause");
system("cls");
}
}
}
二、輸入
intcount=0;
//計數(shù)器記錄學生個數(shù)
voidinput(structstudentstu[],intn)
{
inti;
if(count!=0)
count=0;
printf("\t\t\t-------------------------------\n");
printf("\n");
printf("\t\t\t
歡迎進入學生信息錄入系統(tǒng)\n");
printf("\n");
printf("\t\t\t-------------------------------\n");
printf("\t\t請輸入學生基本信息(學號,姓名,年齡,性別(女w,男m))\n");
for(i=0;ii++)
scanf("%d%s%d%c",stu[i].number,stu[i].name,stu[i].age,stu[i].sex);
system("cls");
printf("\t\t\t
學生信息已錄入\n");
system("pause");
system("cls");
}
三、查詢
voidseek(structstudentstu[],intn)
inti,select2,num2;
charname2[10];
printf("\t\t\t-------------------------------\n");
printf("\n");
printf("\t\t\t
歡迎進入學生信息查詢系統(tǒng)\n");
printf("\n");
printf("\t\t\t-------------------------------\n");
printf("\t\t請選擇查詢方式(1.按學號查詢
2.按姓名查詢)");
scanf("%d",select2);
system("cls");
switch(select2)
{
case1:
{
printf("\t\t\t\t
請輸入學號");
scanf("%d",num2);
system("cls");
for(i=0;in-count;i++)
if(stu[i].number==num2)break;
//判斷輸入學號和結(jié)構(gòu)數(shù)組的學號是否匹配,找到匹配項則退出循環(huán)
if(in-count)
//數(shù)組下標小于學生數(shù),則說明找到該學生,輸出信息
{
printf("\t\t\t您要查詢的學生信息為:\n");
printf("\t\t\t學號%d姓名%s年齡%d性別%c\n",stu[i].number,stu[i].name,stu[i].age,stu[i].sex);
}
else
//數(shù)組下標等于學生數(shù),則沒有找到該學生
printf("\t\t\t\t查無此人\n");
system("pause");
system("cls");
}break;
case2:
{
printf("\t\t\t\t
請輸入姓名");
scanf("%s",name2);
system("cls");
for(i=0;in-count;i++)
if(strcmp(stu[i].name,name2)==0)break;
if(in-count)
{
printf("\t\t\t您要查詢的學生信息為:\n");
printf("\t\t\t學號%d姓名%s年齡%d性別%c\n",stu[i].number,stu[i].name,stu[i].age,stu[i].sex);
}
else
printf("\t\t\t\t查無此人\n");
system("pause");
system("cls");
}break;
}
}
四、刪除
voiddelect(structstudentstu[],intn)
inti=n,j,select3,num3,choice3;
charname3[10];
printf("\t\t\t-------------------------------\n");
printf("\n");
printf("\t\t\t
歡迎進入學生信息刪除系統(tǒng)\n");
printf("\n");
printf("\t\t\t-------------------------------\n");
printf("\t\t請選擇刪除方式(1.按學號刪除
2.按姓名刪除)");
scanf("%d",select3);
system("cls");
switch(select3)
{
case1:
{
printf("\t\t\t\t
請輸入學號");
scanf("%d",num3);
system("cls");
for(i=0;in-count;i++)
if(stu[i].number==num3)break;//首先找到要刪除的學生
if(in-count)
{
printf("\t\t\t當前您要修改的學生信息為\n");
printf("\t\t\t學號%d姓名%s年齡%d性別%c\n",stu[i].number,stu[i].name,stu[i].age,stu[i].sex);
printf("\t\t\t如果您不想再刪除該生信息請按0,繼續(xù)刪除請按1\n");
scanf("%d",choice3);
system("cls");
if(choice3==1)
{
for(j=i;jn-count;j++)//從該學生往后每一項向前移動一項,覆蓋前一個數(shù)據(jù)項
stu[j]=stu[j+1];
count++;
printf("\t\t\t\t該生信息已刪除\n");
system("pause");
system("cls");
}
}
else
{
printf("\t\t\t\t查無此人\n");
system("pause");
system("cls");
}
}break;
case2:
{
printf("\t\t\t\t
請輸入姓名");
scanf("%s",name3);
system("cls");
for(i=0;in-count;i++)
if(strcmp(stu[i].name,name3)==0)break;
if(in-count)
{
printf("\t\t\t當前您要修改的學生信息為\n");
printf("\t\t\t學號%d姓名%s年齡%d性別%c\n",stu[i].number,stu[i].name,stu[i].age,stu[i].sex);
printf("\t\t\t如果您不想再刪除該生信息請按0,繼續(xù)刪除請按1\n");
scanf("%d",choice3);
system("cls");
if(choice3==1)
{
for(j=i;jn-count;j++)
stu[j]=stu[j+1];
count++;
printf("\t\t\t\t該生信息已刪除\n");
system("pause");
system("cls");
}
}
else
{
printf("\t\t\t\t查無此人\n");
system("pause");
system("cls");
}
}
}
}
五、排序
voidsort(structstudentstu[],intn)
intselect4,i,j;
structstudentt;
printf("\t\t\t-------------------------------\n");
printf("\n");
printf("\t\t\t
歡迎進入學生信息排序系統(tǒng)\n");
printf("\n");
printf("\t\t\t-------------------------------\n");
printf("\t\t請選擇排序方式(1.按學號排序
2.按姓名排序)");
scanf("%d",select4);
system("cls");
switch(select4)
{
case1:{
//冒泡排序
for(j=1;jn-count;j++)
{
for(i=0;in-count-j;i++)
{
if(stu[i].numberstu[i+1].number)
{
t=stu[i];
stu[i]=stu[i+1];
stu[i+1]=t;
}
}
}
}break;
case2:{
for(j=1;jn-count;j++)
{
for(i=0;in-count-j;i++)
{
if(strcmp(stu[i].name,stu[i+1].name)0)
{
t=stu[i];
stu[i]=stu[i+1];
stu[i+1]=t;
}
}
}
}
}
printf("\t\t\t\t已按要求完成排序\n");
system("pause");
system("cls");
}
六、修改
voidrevise(structstudentstu[],intn)
intnum5,i=n,choice5;
printf("\t\t\t-------------------------------\n");
printf("\n");
printf("\t\t\t
歡迎進入學生信息修改系統(tǒng)\n");
printf("\n");
printf("\t\t\t-------------------------------\n");
printf("\t\t\t請輸入您要修改的學生學號");
scanf("%d",num5);
system("cls");
for(i=0;in-count;i++)
if(stu[i].number==num5)break;
if(in-count)
{
printf("\t\t\t當前您要修改的學生信息為\n");
printf("\t\t\t學號%d姓名%s年齡%d性別%c\n",stu[i].number,stu[i].name,stu[i].age,stu[i].sex);
printf("\t\t\t如果您不想再修改該生信息請按0,繼續(xù)修改請按1\n");
scanf("%d",choice5);
system("cls");
if(choice5==1)
{
printf("\t\t\t請輸入修改的信息\n");
printf("\t\t\t學號\t姓名\t年齡\t性別\n");
printf("\t\t\t");
scanf("%d%s%d%c",stu[i].number,stu[i].name,stu[i].age,stu[i].sex);//直接將新信息存儲到原數(shù)據(jù)項中,覆蓋原信息即可
system("cls");
printf("\t\t\t\t已完成信息修改\n");
system("pause");
system("cls");
}
}
else
{
printf("\t\t\t\t查無此人\n");
system("pause");
system("cls");
}
}
七、輸出
voidoutput(structstudentstu[],intn)
inti;
printf("\t\t\t-------------------------------\n");
printf("\n");
pr
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負責。
- 6. 下載文件中如有侵權(quán)或不適當內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 加強動物疫苗管理制度
- 公共管理設施管理制度
- 包裝公司運營管理制度
- 學校教師人員管理制度
- 嵌入式開發(fā)工具鏈試題及答案
- 多種規(guī)劃聯(lián)合管理制度
- 公司印刷質(zhì)量管理制度
- 測試策略在多項目環(huán)境中的應用試題及答案
- 中醫(yī)二試題及答案解析
- 信息系統(tǒng)監(jiān)理師資格考試準備試題及答案
- 2025年軟件設計師考試模擬題大全試題及答案
- 和二手車合作協(xié)議書
- 商會授權(quán)運營協(xié)議書
- 石膏砂漿抹灰施工工藝流程及操作要點
- 學習公共關系2025年重要試題及答案
- 2025高考北京卷作文命題趨勢分析及范文
- 2025-2030年中國電子材料行業(yè)市場現(xiàn)狀供需分析及投資評估規(guī)劃分析研究報告
- 2025年普通話水平測試考試試卷及答案
- 2025年地理高考復習 熱點專練 黑吉遼熱點01 傳統(tǒng)文化(解析版)
- 運維自動化流程設計-全面剖析
- 2024北京海淀區(qū)五年級(下)期末語文試題及答案
評論
0/150
提交評論