日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當(dāng)前位置: 首頁 > 运维知识 > windows >内容正文

windows

学生管理系统c语言的作用,C语言实现学生信息管理系统(文件版)

發(fā)布時(shí)間:2024/3/24 windows 43 豆豆
生活随笔 收集整理的這篇文章主要介紹了 学生管理系统c语言的作用,C语言实现学生信息管理系统(文件版) 小編覺得挺不錯(cuò)的,現(xiàn)在分享給大家,幫大家做個(gè)參考.

本文實(shí)例為大家分享了C語言實(shí)現(xiàn)學(xué)生信息管理系統(tǒng)的具體代碼,供大家參考,具體內(nèi)容如下

下面是我自己用寫的學(xué)生信息管理系統(tǒng),為了增加數(shù)據(jù)的利用率,分為學(xué)生端和教師端,同時(shí)實(shí)現(xiàn)賬號密碼登錄,以文件的形式將其存入。

代碼如下

#include

#include

#include

#include

#define USER "TOM" // 事先定義用戶名,用于登錄頁面,驗(yàn)證身份。

#define PW "123456789" // 事先定義密碼 ,作用同上。

void Level_menu();//主菜單的聲明--選擇學(xué)生端還是老師端。

void Level_2_menu(); //二級菜單——具體功能分化

void Student_add_Level_3_menu();// 增添學(xué)生信息菜單功能分化

void Student_Insert(); //添加單個(gè)學(xué)生信息

void Student_Insert1(); /*為上面批量輸入設(shè)置的函數(shù),其代碼與上面的

單個(gè)輸入相似,刪減了一部分*/

void Student_Tongji_menu();//統(tǒng)計(jì)菜單部分

void Student_Tongji_menu2();//統(tǒng)計(jì)二級菜單

void Student_Tongji_menu3();//統(tǒng)計(jì)

void IO_ReadInfo();/*將學(xué)生信息從文件(student database.txt)中讀出*/

void IO_WriteInfo();/*將學(xué)生信息寫入文件(Database.txt)*/

void student_Delete_menu(); /*刪除學(xué)生信息菜單*/

void student_menu1();/*學(xué)生查詢課程信息菜單*/

void student_Kecheng_menu2();

void Student_From_high_to_low1(); /*按綜合測評從高到低排序*/

void jiangxue_menu();/*獎(jiǎng)學(xué)金評定辦法*/

void Student_Display2();/*顯示學(xué)生信息2在獎(jiǎng)學(xué)金評定時(shí)使用*/

/*定義學(xué)生結(jié)構(gòu)體*/

struct Student

{

char ID[20]; //學(xué)號

char Name[20]; //姓名

char sushe[6]; //宿舍房間號

float mathA1; //高等數(shù)學(xué)成績

float EnglishA1; //大學(xué)英語成績

float software; //軟件技術(shù)導(dǎo)論

float china_history;//中國近代史綱要

float junshi; //軍事教育

float xinli; //心理健康輔導(dǎo)

float sports; //體育*/

float C_Mark; //C語言程學(xué)設(shè)計(jì)成績

float pingjun; //總學(xué)分

float Banzhuren; //班主任評分

float Cepingfen; //測評分

};

/*聲明學(xué)生數(shù)組及學(xué)生數(shù)量*/

struct Student students[1000];

int num=0;

int Num;

/*通過學(xué)號返回?cái)?shù)組下標(biāo)*/

int Student_SearchByIndex(char id[])

{

int i;

for (i=0;i

{

if (strcmp(students[i].ID,id)==0)

{

return i;

}

}

return -1;

}

/*通過姓名返回?cái)?shù)組下標(biāo)*/

int Student_SearchByName(char name[])

{

int i;

for (i=0;i

{

if (strcmp(students[i].Name,name)==0)

{

return i;

}

}

return -1;

}

/*通過宿舍成員返回?cái)?shù)組下標(biāo)*/

void Student_SearchBySushe()

{

system("cls");

system("color f0");

int i;

char Sushe[6] ;

printf("請輸入你想要查詢的宿舍房間號: ");

scanf("%s",&Sushe);

printf("%10s%10s%8s%8s%8s%8s%8s%8s%8s%8s%8s%8s%8s%8s\n","學(xué)號","姓名","宿舍號","高等數(shù)學(xué)","大學(xué)英語","軟件技術(shù)導(dǎo)論","中國近代史","軍事教育","心理健康教育","大學(xué)體育","C語言成績","總學(xué)分","班主任評分","測評分");

printf("------------------------------------------------------------------------------------------------------------------------\n");

for (i=0;i

{

if (strcmp(students[i].sushe,Sushe)==0)

{

printf("%10s%10s%5s %8.2f %8.2f %8.2f %8.2f %8.2f %8.2f %8.2f %8.2f %8.2f %8.2f %8.2f\n",students[i].ID,students[i].Name,students[i].sushe,students[i].mathA1,students[i].EnglishA1,students[i].software,students[i].china_history,students[i].junshi,students[i].xinli,students[i].sports,students[i].C_Mark,students[i].pingjun,students[i].Banzhuren,students[i].Cepingfen);

}

}

printf("數(shù)據(jù)加載完畢!");

Student_Tongji_menu2();

}

/*顯示單條學(xué)生記錄*/

void Student_DisplaySingle(int index)

{

printf("%10s%10s%8s%8s%8s%8s%8s%8s%8s%8s%8s%8s\n","學(xué)號","姓名","宿舍號","高等數(shù)學(xué)","大學(xué)英語","軟件技術(shù)導(dǎo)論","中國近代史","軍事教育","心理健康教育","大學(xué)體育","C語言成績","品行分");

printf("------------------------------------------------------------------------------------------------------------------------\n");

printf("%10s%10s%5s %8.2f %8.2f %8.2f %8.2f %8.2f %8.2f %8.2f %8.2f %8.2f\n",students[index].ID,students[index].Name,students[index].sushe,students[index].mathA1,students[index].EnglishA1,students[index].software,students[index].china_history,students[index].junshi,students[index].xinli,students[index].sports,students[index].C_Mark,students[index].pingjun);

}

/*增加單條學(xué)生記錄*/

void Student_Insert()

{

system("cls");

system("color f0");

float a1,a2,a3,a4,a5,a6,a7,a8;

float j=0;

while(1)

{

printf("請輸入學(xué)號:");

scanf("%s",&students[num].ID);

getchar();

printf("請輸入姓名:");

scanf("%s",&students[num].Name);

getchar();

printf("請輸入宿舍號:");

scanf("%s",&students[num].sushe);

getchar();

printf("請輸入高等數(shù)學(xué)成績:");

scanf("%f",&students[num].mathA1);

getchar();

if (59

a8= 1.5;

else

a8=0;

printf("請輸入大學(xué)英語成績:");

scanf("%f",&students[num].EnglishA1);

getchar();

if (59

a1= 2;

else

a1=0;

printf("請輸入軟件技術(shù)導(dǎo)論成績:");

scanf("%f",&students[num].software);

getchar();

if (59

a2= 1.5;

else

a2=0;

printf("請輸入中國近代史綱要成績:");

scanf("%f",&students[num].china_history);

getchar();

if (59

a3= 2.5;

else

a3=0;

printf("請輸入軍事教育:");

scanf("%f",&students[num].junshi);

getchar();

if (59

a4= 2;

else

{

a4=0;

}

printf("請輸入心理健康教育成績:");

scanf("%f",&students[num].xinli);

getchar();

if (59

a5= 1.5;

else

a5=0;

printf("請輸入體育成績:");

scanf("%f",&students[num].sports);

getchar();

if (59

a6= 2;

else

a6=0;

printf("請輸入C語言成績:");

scanf("%f",&students[num].C_Mark);

getchar();

if (59

a7= 3.5;

else

a7=0;

printf("請輸入班主任評分:");

scanf("%f",&students[num].Banzhuren);

getchar();

students[num].pingjun=a1+a2+a3+a4+a5+a6+a7+a8; //總學(xué)分

j=(students[num].pingjun*0.4)+(students[num].Banzhuren*0.6);

students[num].Cepingfen=j;

num++;

printf("是否繼續(xù)?(Y/N),繼續(xù)請按任意鍵,否則輸入N:");

if (getchar()=='N')

{

Num=num;

break;

}

}

}

/*批量添加學(xué)生記錄*/

void Student_many1()

{

{

system("cls");

system("color f0");

int i,j;

printf("請輸入你將要添加的人員數(shù): ");

scanf("%d",&j);

for(i=0;i

{

Student_Insert1();

}

printf("成員添加完畢,是否跳轉(zhuǎn)至上一級菜單?\n");

printf("是?,請按任意鍵,確認(rèn)輸入: \n");

if (getchar()=='Y')

{

Student_add_Level_3_menu();

}

}

}

/*為上面批量輸入設(shè)置的函數(shù),其代碼與上面的

單個(gè)輸入相似,刪減了一部分*/

void Student_Insert1()

{

{

printf("請輸入學(xué)號:");

scanf("%s",&students[num].ID);

getchar();

printf("請輸入姓名:");

scanf("%s",&students[num].Name);

getchar();

printf("請輸入宿舍號:");

scanf("%s",&students[num].sushe);

getchar();

printf("請輸入高等數(shù)學(xué)成績:");

scanf("%f",&students[num].mathA1);

getchar();

printf("請輸入大學(xué)英語成績:");

scanf("%f",&students[num].EnglishA1);

getchar();

printf("請輸入軟件技術(shù)導(dǎo)論成績:");

scanf("%f",&students[num].software);

getchar();

printf("請輸入中國近代史綱要成績:");

scanf("%f",&students[num].china_history);

getchar();

printf("請輸入軍事教育:");

scanf("%f",&students[num].junshi);

getchar();

printf("請輸入心理健康教育成績:");

scanf("%f",&students[num].xinli);

getchar();

printf("請輸入體育成績:");

scanf("%f",&students[num].sports);

getchar();

printf("請輸入C語言成績:");

scanf("%f",&students[num].C_Mark);

getchar();

printf("請輸入班主任評分:");

scanf("%f",&students[num].Banzhuren);

getchar();

if (54

{

students[num].C_Mark += 5;

}

num++;

}

}

/*修改學(xué)生信息*/

void Student_Modify()

{

system("cls");

system("color f0");

float a1,a2,a3,a4,a5,a6,a7,a8;

float j=0;

while(1)

{

char id[20];

int index;

printf("請輸入要修改的學(xué)生的學(xué)號:");

scanf("%s",&id);

getchar();

index=Student_SearchByIndex(id);

if (index==-1)

{

printf("該學(xué)生不存在!\n");

}

else

{

printf("你要修改的學(xué)生信息為:\n");

Student_DisplaySingle(index);

printf("-- 請輸入新值--\n");

/*printf("請輸入學(xué)號:");

scanf("%s",&students[index].ID);

getchar();

printf("請輸入姓名:");

scanf("%s",&students[index].Name);

getchar();

printf("請輸入宿舍號:");

scanf("%s",&students[index].sushe);

getchar();

printf("請輸入高等數(shù)學(xué)成績:");

scanf("%f",&students[index].mathA1);

getchar();

printf("請輸入大學(xué)英語成績:");

scanf("%f",&students[index].EnglishA1);

getchar();

printf("請輸入軟件技術(shù)導(dǎo)論成績:");

scanf("%f",&students[index].software);

getchar();

printf("請輸入中國近代史綱要成績:");

scanf("%f",&students[index].china_history);

getchar();

printf("請輸入軍事教育:");

scanf("%f",&students[index].junshi);

getchar();

printf("請輸入心理健康教育成績:");

scanf("%f",&students[index].xinli);

getchar();

printf("請輸入體育成績:");

scanf("%f",&students[index].sports);

getchar();

printf("請輸入C語言成績:");

scanf("%f",&students[index].C_Mark);

getchar();

printf("請輸入班主任評分:");

scanf("%f",&students[num].Banzhuren);

getchar();*/

printf("請輸入學(xué)號:");

scanf("%s",&students[index].ID);

getchar();

printf("請輸入姓名:");

scanf("%s",&students[index].Name);

getchar();

printf("請輸入宿舍號:");

scanf("%s",&students[index].sushe);

getchar();

printf("請輸入高等數(shù)學(xué)成績:");

scanf("%f",&students[index].mathA1);

getchar();

if (59

a8= 1.5;

else

a8=0;

printf("請輸入大學(xué)英語成績:");

scanf("%f",&students[index].EnglishA1);

getchar();

if (59

a1= 2;

else

a1=0;

printf("請輸入軟件技術(shù)導(dǎo)論成績:");

scanf("%f",&students[index].software);

getchar();

if (59

a2= 1.5;

else

a2=0;

printf("請輸入中國近代史綱要成績:");

scanf("%f",&students[index].china_history);

getchar();

if (59

a3= 2.5;

else

a3=0;

printf("請輸入軍事教育:");

scanf("%f",&students[index].junshi);

getchar();

if (59

a4= 2;

else

{

a4=0;

}

printf("請輸入心理健康教育成績:");

scanf("%f",&students[index].xinli);

getchar();

if (59

a5= 1.5;

else

a5=0;

printf("請輸入體育成績:");

scanf("%f",&students[index].sports);

getchar();

if (59

a6= 2;

else

a6=0;

printf("請輸入C語言成績:");

scanf("%f",&students[index].C_Mark);

getchar();

if (59

a7= 3.5;

else

a7=0;

printf("請輸入班主任評分:");

scanf("%f",&students[index].Banzhuren);

getchar();

students[index].pingjun=a1+a2+a3+a4+a5+a6+a7+a8; //總學(xué)分

j=(students[index].pingjun*0.4)+(students[index].Banzhuren*0.6);

students[index].Cepingfen=j;

}

printf("是否繼續(xù)?(Y/N),繼續(xù)請按任意鍵,否則輸入N:");

if (getchar()=='N')

{

break;

}

}

}

/*按學(xué)號刪除學(xué)生信息*/

void Student_Delete()

{

system("cls");

system("color f0");

IO_ReadInfo();

int i;

while(1)

{

char id[20];

int index;

printf("請輸入要?jiǎng)h除的學(xué)生的學(xué)號:");

scanf("%s",&id);

getchar();

index=Student_SearchByIndex(id);

if (index==-1)

{

printf("學(xué)生不存在!\n");

}

else

{

printf("你要?jiǎng)h除的學(xué)生信息為:\n");

Student_DisplaySingle(index);

printf("%d",index);

printf("%d",num);

{

for (i=index;i

{

students[i]=students[i+1]; //把后邊的對象都向前移動(dòng)

}

num--;

}

printf("已刪除\n");

IO_WriteInfo();

}

printf("是否繼續(xù)刪除?(Y/N),繼續(xù)請按任意鍵,否則輸入N:");

if (getchar()=='N')

{

break;

}

}

}

/*按姓名刪除學(xué)生信息*/

void Student_Delete_1()

{

system("cls");

system("color f0");

IO_ReadInfo();

int i;

while(1)

{

char name[20];

int index;

printf("請輸入要?jiǎng)h除的學(xué)生的姓名: ");

scanf("%s",&name);

getchar();

index=Student_SearchByName(name);

if (index==-1)

{

printf("學(xué)生不存在!\n");

}

else

{

printf("你要?jiǎng)h除的學(xué)生信息為:\n");

Student_DisplaySingle(index);

{

for (i=index;i

{

students[i]=students[i+1]; //把后邊的對象都向前移動(dòng)

}

num--;

}

printf("已刪除\n");

IO_WriteInfo();

}

printf("是否繼續(xù)刪除?(Y/N),繼續(xù)請按任意鍵,否則輸入N:");

if (getchar()=='N')

{

break;

}

}

}

/*按姓名查詢*/

void Student_Select_1()

{

while(1)

{

char name[20];

int index;

printf("請輸入要查詢的學(xué)生的姓名:");

scanf("%s",&name);

getchar();

index=Student_SearchByName(name);

if (index==-1)

{

printf("學(xué)生不存在!\n");

}

else

{

printf("你要查詢的學(xué)生信息為:\n");

Student_DisplaySingle(index);

}

printf("是否繼續(xù)?(Y/N),繼續(xù)請按任意鍵,否則輸入N:");

if (getchar()=='N')

{

break;

}

}

}

/*按學(xué)號查找*/

void Student_Select_2()

{

while(1)

{

char ID[20];

int index;

system("cls");

system("color f0");

printf("請輸入要查詢的學(xué)生的學(xué)號:");

scanf("%s",&ID);

getchar();

index=Student_SearchByIndex(ID);

if (index==-1)

{

printf("學(xué)生不存在!\n");

}

else

{

printf("你要查詢的學(xué)生信息為:\n");

Student_DisplaySingle(index);

}

printf("是否繼續(xù)?(Y/N),繼續(xù)請按任意鍵,否則輸入N:");

if (getchar()=='N')

{

break;

}

}

}

void Student_Search_menu()

{

int choice;

while(1)

{

system("cls");

system("color f0");

printf("\t\t\t\t\t\t1. 按姓名查詢學(xué)生記錄\n");

printf("\t\t\t\t\t\t2. 按學(xué)號查詢學(xué)生記錄\n");

printf("\t\t\t\t\t\t3. 返回上一級菜單\n");

printf("\t\t\t\t\t\t4. 返回主菜單\n");

printf("\t\t\t\t\t\t請選擇(1-4):");

scanf("%d",&choice);

getchar();

switch(choice)

{

case 1:Student_Select_1();

break;

case 2:Student_Select_2();

break;

case 3:Level_2_menu();

break;

case 4:Level_menu();

break;

}

}

}

/*按C語言成績從高到低排序*/

void Student_From_high_to_low()

{

int i,j;

struct Student tmp;

for (i=0;i

{

for (j=1;j

{

if (students[j-1].C_Mark

{

tmp=students[j-1];

students[j-1]=students[j];

students[j]=tmp;

}

}

}

}

/*按C語言成績從低到高排序*/

void Student_From_low_to_high()

{

int i,j;

struct Student tmp;

for (i=0;i

{

for (j=1;j

{

if (students[j-1].C_Mark>students[j].C_Mark)

{

tmp=students[j-1];

students[j-1]=students[j];

students[j]=tmp;

}

}

}

}

/*按綜合測評從高到低排序*/

void Student_From_high_to_low1()

{

int i,j,k;

struct Student tmp;

for (i=0;i

{

for (j=1;j

{

if (students[j-1].Cepingfen

{

tmp=students[j-1];

students[j-1]=students[j];

students[j]=tmp;

}

}

}

/*system("cls");

system("color f0");

while(1)

{

int k;

printf("%10s%10s %8s%8s%8s%8s%8s%8s%8s%8s%8s%8s%8s%8s\n","學(xué)號","姓名","宿舍號"," 高等數(shù)學(xué)","大學(xué)英語","軟件技術(shù)導(dǎo)論","中國近代史","軍事教育","心理健康教育","大學(xué)體育","C語言成績","品行分","班主任評分","測評分");

printf("-------------------------------------------------------------------------------------------------------------------------------------------------------------------------\n");

for (k=0;k

{

if(59

{

printf("%10s%10s %8s %8.2f %8.2f %8.2f %8.2f %8.2f %8.2f %8.2f %8.2f %8.2f %8.2f %8.2f\n",students[k].ID,students[k].Name,students[k].sushe,students[k].mathA1,students[k].EnglishA1,students[k].software,students[k].china_history,students[k].junshi,students[k].xinli,students[k].sports,students[k].C_Mark,students[k].pingjun,students[k].Banzhuren,students[k].Cepingfen);

}

}

printf("數(shù)據(jù)加載完畢!");

jiangxue_menu();

Student_Tongji_menu3();

} */

}

/*獎(jiǎng)學(xué)金評定辦法*/

void jiangxue_menu()

{

float i=0,j=0,k=0;

int a,b,c;

i=num*0.1;

j=num*0.15;

k=num*0.2;

a=(int)i;

b=(int)j;

c=(int)k;

printf("一等獎(jiǎng)獲得人數(shù)為:%d\n",a);

printf("二等獎(jiǎng)獲獎(jiǎng)人數(shù)為:%d\n",b);

printf("三等獎(jiǎng)獲獎(jiǎng)人數(shù)為:%d\n",c);

}

//對獎(jiǎng)學(xué)金及格的人員篩選出來

void jiangxue()

{

system("cls");

system("color f0");

while(1)

{

int k;

printf("%10s%10s %8s%8s%8s%8s%8s%8s%8s%8s%8s%8s%8s%8s\n","學(xué)號","姓名","宿舍號"," 高等數(shù)學(xué)","大學(xué)英語","軟件技術(shù)導(dǎo)論","中國近代史","軍事教育","心理健康教育","大學(xué)體育","C語言成績","品行分","班主任評分","測評分");

printf("-------------------------------------------------------------------------------------------------------------------------------------------------------------------------\n");

for (k=0;k

{

if(59

{

printf("%10s%10s %8s %8.2f %8.2f %8.2f %8.2f %8.2f %8.2f %8.2f %8.2f %8.2f %8.2f %8.2f\n",students[k].ID,students[k].Name,students[k].sushe,students[k].mathA1,students[k].EnglishA1,students[k].software,students[k].china_history,students[k].junshi,students[k].xinli,students[k].sports,students[k].C_Mark,students[k].pingjun,students[k].Banzhuren,students[k].Cepingfen);

}

}

printf("數(shù)據(jù)加載完畢!");

jiangxue_menu();

Student_Tongji_menu3();

}

}

/*顯示學(xué)生信息*/

void Student_Display()

{

system("cls");

system("color f0");

while(1)

{

int i;

printf("%10s%10s %8s%8s%8s%8s%8s%8s%8s%8s%8s%8s\n","學(xué)號","姓名","宿舍號"," 高等數(shù)學(xué)","大學(xué)英語","軟件技術(shù)導(dǎo)論","中國近代史","軍事教育","心理健康教育","大學(xué)體育","C語言成績","品行分");

printf("-------------------------------------------------------------------------------------------------------------------------------------------------------------------------\n");

for (i=0;i

{

printf("%10s%10s %8s %8.2f %8.2f %8.2f %8.2f %8.2f %8.2f %8.2f %8.2f %8.2f\n",students[i].ID,students[i].Name,students[i].sushe,students[i].mathA1,students[i].EnglishA1,students[i].software,students[i].china_history,students[i].junshi,students[i].xinli,students[i].sports,students[i].C_Mark,students[i].pingjun);

}

printf("是否繼續(xù)?(Y/N),繼續(xù)請按任意鍵,否則輸入N:");

if (getchar()=='N')

{

break;

}

}

}

/*顯示學(xué)生信息1*/

void Student_Display1()

{

system("cls");

system("color f0");

while(1)

{

int i;

printf("%10s%10s %8s%8s%8s%8s%8s%8s%8s%8s%8s%8s%8s%8s\n","學(xué)號","姓名","宿舍號"," 高等數(shù)學(xué)","大學(xué)英語","軟件技術(shù)導(dǎo)論","中國近代史","軍事教育","心理健康教育","大學(xué)體育","C語言成績","品行分","班主任評分","測評分");

printf("-------------------------------------------------------------------------------------------------------------------------------------------------------------------------\n");

for (i=0;i

{

printf("%10s%10s %8s %8.2f %8.2f %8.2f %8.2f %8.2f %8.2f %8.2f %8.2f %8.2f %8.2f %8.2f\n",students[i].ID,students[i].Name,students[i].sushe,students[i].mathA1,students[i].EnglishA1,students[i].software,students[i].china_history,students[i].junshi,students[i].xinli,students[i].sports,students[i].C_Mark,students[i].pingjun,students[i].Banzhuren,students[i].Cepingfen);

}

printf("數(shù)據(jù)加載完畢!");

Student_Tongji_menu3();

}

}

/*顯示學(xué)生信息2在獎(jiǎng)學(xué)金評定時(shí)使用*/

void Student_Display2()

{

system("cls");

system("color f0");

while(1)

{

int i;

printf("%10s%10s %8s%8s%8s%8s%8s%8s%8s%8s%8s%8s%8s%8s\n","學(xué)號","姓名","宿舍號"," 高等數(shù)學(xué)","大學(xué)英語","軟件技術(shù)導(dǎo)論","中國近代史","軍事教育","心理健康教育","大學(xué)體育","C語言成績","品行分","班主任評分","測評分");

printf("-------------------------------------------------------------------------------------------------------------------------------------------------------------------------\n");

for (i=0;i

{

printf("%10s%10s %8s %8.2f %8.2f %8.2f %8.2f %8.2f %8.2f %8.2f %8.2f %8.2f %8.2f %8.2f\n",students[i].ID,students[i].Name,students[i].sushe,students[i].mathA1,students[i].EnglishA1,students[i].software,students[i].china_history,students[i].junshi,students[i].xinli,students[i].sports,students[i].C_Mark,students[i].pingjun,students[i].Banzhuren,students[i].Cepingfen);

}

printf("數(shù)據(jù)加載完畢!");

jiangxue_menu();

Student_Tongji_menu3();

}

}

/*將學(xué)生信息從文件(student database.txt)中讀出*/

void IO_ReadInfo()

{

FILE *fp;

int i;

if ((fp=fopen("student database.txt","rb"))==NULL)

{

printf("不能打開文件!\n");

return;

}

if (fread(&num,sizeof(int),1,fp)!=1)

{

num=-1;

}

else

{

for(i=0;i

{

fread(&students[i],sizeof(struct Student),1,fp);

}

}

fclose(fp);

}

/*將學(xué)生信息寫入文件(Database.txt)*/

void IO_WriteInfo()

{

FILE *fp;

int i;

if ((fp=fopen("student database.txt","wb"))==NULL)

{

printf("不能打開文件!\n");

return;

}

if (fwrite(&num,sizeof(int),1,fp)!=1)

{

printf("寫入文件錯(cuò)誤!\n");

}

for (i=0;i

{

if (fwrite(&students[i],sizeof(struct Student),1,fp)!=1)

{

printf("寫入文件錯(cuò)誤!\n");

}

}

fclose(fp);

}

/*一級菜單*/

/*賬號密碼登錄*/

void Level_1_menu( )

{ char account[20];

char password[30];

int i = 0;

int j = 3;

for (; i < 3; i++){

printf("\n\n\n\n\t\t\t\t\t\t *主菜單*\n");

printf("\t\t\t\t\t\t******************\n");

printf("\t\t\t\t\t\t*請輸入您的賬號:*\n");

printf("\t\t\t\t\t\t******************\n");

printf(" 請輸入:");

scanf ("%s", account);

printf("\t\t\t\t\t\t******************\n");

//scanf ("%s", account);

printf("\t\t\t\t\t\t******************\n");

printf("\t\t\t\t\t\t*請輸入您的密碼:*\n");

printf("\t\t\t\t\t\t******************\n");

printf(" 請輸入:");

scanf ("%s", password);

if (strcmp(USER, account) == 0 && strcmp(PW, password) == 0){

printf("登錄成功!\n");

break;

}

else{

j--;

printf("登錄失敗您還有%d次機(jī)會!\n", j);

}

}

if (i == 3){

printf("登錄失敗,退出!");

}

//system("pause");

system("cls");

system("color f0");

}

/*增加學(xué)生信息三級菜單模塊*/

void Student_add_Level_3_menu()

{

int choice;

while(1)

{

system("cls");

system("color f0");

IO_ReadInfo(); //讀取文件

printf("\t\t\t\t\t\t1. 單個(gè)添加學(xué)生信息\n");

printf("\t\t\t\t\t\t2. 批量添加學(xué)生信息\n");

printf("\t\t\t\t\t\t3. 返回上一級菜單\n");

printf("\t\t\t\t\t\t4. 返回主菜單\n");

printf("\t\t\t\t\t\t請選擇(1-4):");

scanf("%d",&choice);

getchar();

switch(choice)

{

case 1:Student_Insert();

IO_WriteInfo(); //寫入文件

break;

case 2:Student_many1();

IO_WriteInfo(); //寫入文件

break;

case 3:Level_2_menu();

break;

case 4:Level_menu();

break;

}

IO_WriteInfo(); //寫入文件

}

//Student_Insert();

}

/*二級菜單*/

/*主菜單*/

void Level_2_menu( )

{

int choice;

while(1)

{

/*二級菜單*/

/*主菜單*/

system("cls");

system("color f0");

IO_ReadInfo(); //讀取文件

printf("\n\t\t\t\t\t\t------ 學(xué)生成績管理系統(tǒng)------\n");

printf("\t\t\t\t\t\t1. 增加學(xué)生記錄\n");

printf("\t\t\t\t\t\t2. 修改學(xué)生記錄\n");

printf("\t\t\t\t\t\t3. 刪除學(xué)生記錄\n");

printf("\t\t\t\t\t\t4. 查詢學(xué)生記錄\n");

printf("\t\t\t\t\t\t5. 統(tǒng)計(jì)學(xué)生記錄\n");

printf("\t\t\t\t\t\t6. 退出\n");

printf("\t\t\t\t\t\t請選擇(1-6):");

scanf("%d",&choice);

getchar();

switch(choice)

{

case 1:

Student_add_Level_3_menu();

break;

case 2:

Student_Modify();

break;

case 3:

student_Delete_menu();

break;

case 4:

Student_Search_menu();

break;

case 5:

Student_Tongji_menu();

break;

case 6:

Level_menu();

break;

}

IO_WriteInfo();

}

}

/*學(xué)生端成績查詢模塊*/

void student_Delete_menu()

{

int choice;

while(1)

{

system("cls");

system("color f0");

IO_ReadInfo(); //讀取文件

printf("\n\n\n\n\t\t\t\t\t\t************************\n");

printf("\t\t\t\t\t\t* 刪除學(xué)生信息菜單******\n");

printf("\t\t\t\t\t\t************************\n");

printf("\t\t\t\t\t\t*1、按姓名刪除信息 *\n");

printf("\t\t\t\t\t\t*2、按學(xué)號刪除信息 *\n");

printf("\t\t\t\t\t\t*3、返回上一級功能菜單 *\n");

printf("\t\t\t\t\t\t*4、返回主菜單 *\n");

printf("\t\t\t\t\t\t************************\n");

printf("\t\t\t\t\t\t************************\n");

printf(" 請選擇(1-4):");

scanf("%d",&choice);

switch(choice)

{

case 1:

system("cls");

system("color f0");

Student_Delete_1();

break;

case 2:

system("cls");

system("color f0");

Student_Delete();

break;

case 3:

Level_2_menu();

break;

case 4:

Level_menu();

break;

}

IO_WriteInfo();

}

}

/*學(xué)生端成績查詢模塊*/

void student_menu()

{

int choice;

while(1)

{

system("cls");

system("color f0");

IO_ReadInfo(); //讀取文件

printf("\n\n\n\n\t\t\t\t\t\t*******************\n");

printf("\t\t\t\t\t\t* 學(xué)生菜單 *\n");

printf("\t\t\t\t\t\t*******************\n");

printf("\t\t\t\t\t\t*1、按姓名查詢成績*\n");

printf("\t\t\t\t\t\t*2、按學(xué)號查詢成績*\n");

printf("\t\t\t\t\t\t*3、查詢課程信息 *\n");

printf("\t\t\t\t\t\t*4、退出 *\n");

printf("\t\t\t\t\t\t*******************\n");

printf("\t\t\t\t\t\t*******************\n");

printf(" 請選擇(1-3):");

scanf("%d",&choice);

switch(choice)

{

case 1:

system("cls");

system("color f0");

Student_Select_1();

break;

case 2:

Student_Select_2();

break;

case 3:

student_menu1();

break;

case 4:

Level_menu();

break;

}

IO_WriteInfo();

}

}

void student_Kecheng_menu1()

{ printf("\n\n\n\n\t\t\t\t\t\t************************************************\n");

printf("\t\t\t\t\t\t* 課程代號 課程名稱 學(xué)分 必修/選修*\n");

printf("\t\t\t\t\t\t*B27020100 中國近現(xiàn)代史綱要 2.0 必修 *\n");

printf("\t\t\t\t\t\t*B10060111 大學(xué)英語A1 4.0 必修 *\n");

printf("\t\t\t\t\t\t*B14010101 大學(xué)體育1 2.0 必修 *\n");

printf("\t\t\t\t\t\t*B06010111 高等數(shù)學(xué)A1 5.0 必修 *\n");

printf("\t\t\t\t\t\t*B08050101 軟件技術(shù)導(dǎo)論 2.0 必修 *\n");

printf("\t\t\t\t\t\t*B08010100 C語言程序設(shè)計(jì) 5.0 必修 *\n");

printf("\t\t\t\t\t\t*B08010201 C語言程序設(shè)計(jì)實(shí)訓(xùn)1 2.0 必修 *\n");

printf("\t\t\t\t\t\t*B08056601 創(chuàng)新與指導(dǎo)實(shí)踐1 1.0 必修 *\n");

printf("\t\t\t\t\t\t*B21991100 軍事教育 2.0 選修 *\n");

printf("\t\t\t\t\t\t**************************************************\n");

printf("\t\t\t\t\t\t**************************************************\n");

printf("\t\t\t\t\t\t1. 返回上一級菜單\n");

printf("\t\t\t\t\t\t2. 返回主菜單\n");

printf("\t\t\t\t\t\t請選擇(1-2):");

int choice;

scanf("%d",&choice);

while(1)

switch(choice)

{

case 1:student_menu1();

break;

case 2:Level_menu();

break;

}

//寫入文件

}

void student_Kecheng_menu2()

{ printf("\n\n\n\n\t\t\t\t\t\t************************************************\n");

printf("\t\t\t\t\t\t* 課程代號 課程名稱 學(xué)分 必修/選修*\n");

printf("\t\t\t\t\t\t*B27010100 思想道德修養(yǎng) 3.0 必修 *\n");

printf("\t\t\t\t\t\t*B10060112 大學(xué)英語A2 4.0 必修 *\n");

printf("\t\t\t\t\t\t*B14010102 大學(xué)體育2 2.0 必修 *\n");

printf("\t\t\t\t\t\t*B06010112 高等數(shù)學(xué)A2 5.0 必修 *\n");

printf("\t\t\t\t\t\t*B08052200 數(shù)字邏輯設(shè)計(jì) 2.0 必修 *\n");

printf("\t\t\t\t\t\t*B06050131 大學(xué)物理C1 2.5 必修 *\n");

printf("\t\t\t\t\t\t*B06020100 離散數(shù)學(xué) 4.0 必修 *\n");

printf("\t\t\t\t\t\t*B08056601 創(chuàng)新與指導(dǎo)實(shí)踐2 1.0 必修 *\n");

printf("\t\t\t\t\t\t*B21991100 C語言程序設(shè)計(jì)實(shí)踐2 2.0 選修 *\n");

printf("\t\t\t\t\t\t**************************************************\n");

printf("\t\t\t\t\t\t**************************************************\n");

printf("\t\t\t\t\t\t1. 返回上一級菜單\n");

printf("\t\t\t\t\t\t2. 返回主菜單\n");

printf("\t\t\t\t\t\t請選擇(1-2):");

int choice;

scanf("%d",&choice);

while(1)

switch(choice)

{

case 1:student_menu1();

break;

case 2:Level_menu();

break;

}

//寫入文件

}

/*學(xué)生端學(xué)生課程查詢模塊*/

void student_menu1()

{

int choice;

while(1)

{

system("cls");

system("color f0");

IO_ReadInfo(); //讀取文件

printf("\n\n\n\n\t\t\t\t\t\t*******************\n");

printf("\t\t\t\t\t\t* 課程信息 *\n");

printf("\t\t\t\t\t\t*******************\n");

printf("\t\t\t\t\t\t*1、第一學(xué)期 *\n");

printf("\t\t\t\t\t\t*2、第二學(xué)期 *\n");

printf("\t\t\t\t\t\t*3、第三學(xué)期 *\n");

printf("\t\t\t\t\t\t*4、第四學(xué)期 *\n");

printf("\t\t\t\t\t\t*5、第五學(xué)期 *\n");

printf("\t\t\t\t\t\t*6、第六學(xué)期 *\n");

printf("\t\t\t\t\t\t*7、第七學(xué)期 *\n");

printf("\t\t\t\t\t\t*8、退出 *\n");

printf("\t\t\t\t\t\t*******************\n");

printf("\t\t\t\t\t\t*******************\n");

printf(" 請選擇(1-3):");

scanf("%d",&choice);

switch(choice)

{

case 1:

system("cls");

system("color f0");

student_Kecheng_menu1();

break;

case 2:

system("cls");

system("color f0");

student_Kecheng_menu2();

break;

case 3:

break;

case 4:

break;

case 5:

break;

case 6:

break;

case 7:

break;

case 8:

Level_menu();

break;

}

IO_WriteInfo();

}

}

/*統(tǒng)計(jì)菜單模塊*/

void Student_Tongji_menu()

{

int choice;

while(1)

{

system("cls");

system("color f0");

IO_ReadInfo(); //讀取文件

printf("\n\n\n\n\t\t\t\t\t\t******************************\n");

printf("\t\t\t\t\t\t* 學(xué)生統(tǒng)計(jì)菜單 *\n");

printf("\t\t\t\t\t\t******************************\n");

printf("\t\t\t\t\t\t*1、按C語言成績從高到低排序 *\n");

printf("\t\t\t\t\t\t*2、按C語言成績從低到高排序 *\n");

printf("\t\t\t\t\t\t*3、按宿舍成員進(jìn)行統(tǒng)計(jì) *\n");

printf("\t\t\t\t\t\t*4、獎(jiǎng)學(xué)金評定 *\n");

printf("\t\t\t\t\t\t*5、返回功能菜單 *\n");

printf("\t\t\t\t\t\t*6、返回主菜單 *\n");

printf("\t\t\t\t\t\t******************************\n");

printf("\t\t\t\t\t\t******************************\n");

printf(" 請選擇(1-5):");

scanf("%d",&choice);

switch(choice)

{

case 1:

Student_From_high_to_low();

Student_Display1();

break;

case 2:

Student_From_low_to_high();

Student_Display1();

break;

case 3:

Student_SearchBySushe();

break;

case 4:

Student_From_high_to_low1();

Student_Display2();

break;

case 5:

Level_2_menu( );

break;

case 6:

Level_menu();

break;

}

IO_WriteInfo();

}

}

/*統(tǒng)計(jì)菜單模塊*/

void Student_Tongji_menu2()

{

int choice;

while(1)

{

IO_ReadInfo(); //讀取文件

printf("\n\n\n\n\t\t\t\t\t\t******************************\n");

printf("\t\t\t\t\t\t* 你目前在學(xué)生宿舍統(tǒng)計(jì)頁面! *\n");

printf("\t\t\t\t\t\t******************************\n");

printf("\t\t\t\t\t\t*1、返回上一級統(tǒng)計(jì)菜單 *\n");

printf("\t\t\t\t\t\t*2、返回功能選擇菜單 *\n");

printf("\t\t\t\t\t\t*3、返回主菜單 *\n");

printf("\t\t\t\t\t\t******************************\n");

printf("\t\t\t\t\t\t******************************\n");

printf(" 請選擇(1-3):");

scanf("%d",&choice);

switch(choice)

{

case 1:

system("cls");

system("color f0");

Student_Tongji_menu();

case 2:

system("cls");

system("color f0");

Level_2_menu( );

case 3:

system("cls");

system("color f0");

Level_menu();

}

}

}

/*統(tǒng)計(jì)菜單模塊*/

void Student_Tongji_menu3()

{

int choice;

while(1)

{

IO_ReadInfo(); //讀取文件

printf("\n\n\n\n\t\t\t\t\t\t******************************\n");

printf("\t\t\t\t\t\t* 你目前按C語言成績統(tǒng)計(jì)頁面!*\n");

printf("\t\t\t\t\t\t******************************\n");

printf("\t\t\t\t\t\t*1、返回上一級統(tǒng)計(jì)菜單 *\n");

printf("\t\t\t\t\t\t*2、返回功能選擇菜單 *\n");

printf("\t\t\t\t\t\t*3、返回主菜單 *\n");

printf("\t\t\t\t\t\t******************************\n");

printf("\t\t\t\t\t\t******************************\n");

printf(" 請選擇(1-3):");

scanf("%d",&choice);

switch(choice)

{

case 1:

system("cls");

system("color f0");

Student_Tongji_menu();

case 2:

system("cls");

system("color f0");

Level_2_menu( );

case 3:

system("cls");

system("color f0");

Level_menu();

}

}

}

/*第一級主菜單學(xué)生or老師的判斷*/

void Level_menu()

{ int choice;

while(1)

{

system("cls");

system("color f0");

printf("\n\n\n\n\n\n\n\t\t\t\t\t\t******************\n");

printf("\t\t\t\t\t\t*1、教師端 *\n");

printf("\t\t\t\t\t\t*2、學(xué)生端 *\n");

printf("\t\t\t\t\t\t*3、退出 *\n");

printf("\t\t\t\t\t\t******************\n");

printf(" 請選擇(1-3):");

scanf("%d",&choice);

switch(choice)

{

case 1:

system("cls");

system("color f0");

Level_1_menu(); //一級菜單,密碼登錄。

IO_ReadInfo(); //讀取文件

Level_2_menu(); //二級菜單-主菜單

IO_WriteInfo();

break;

case 2:

student_menu();

break;

case 3:

exit(0);

break;

}

}

}

/***********主程序*********/

main()

{

Level_menu();

}

關(guān)于管理系統(tǒng)的更多內(nèi)容請點(diǎn)擊《管理系統(tǒng)專題》進(jìn)行學(xué)習(xí)

以上就是本文的全部內(nèi)容,希望對大家的學(xué)習(xí)有所幫助,也希望大家多多支持腳本之家。

總結(jié)

以上是生活随笔為你收集整理的学生管理系统c语言的作用,C语言实现学生信息管理系统(文件版)的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網(wǎng)站內(nèi)容還不錯(cuò),歡迎將生活随笔推薦給好友。