1. 程式人生 > >c語言實現學生管理系統

c語言實現學生管理系統

{{ int i,j,o; char a[20]; system("cls"); printf("修改學生的學號:"); scanf("%s",&a); //通過輸入需要修改資訊的學號找到他 printf("\n"); for(i=0;i<n;i++) { if(strcmp(a,s[i].num)==0) { printf("學號:%s\n",s[i].num); printf("姓名:%s\n"
,s[i].name); printf("班級:%s\n",s[i].Class); printf("專業:%s\n",s[i].mayor); printf("年齡:%d\n",s[i].age); printf("成績:%d\n\n",s[i].score); o=i; } } printf("1.修改學號\n2.修改姓名\n3.修改專業\n4.修改年級\n5.修改性別\n6.修改出生日期\n請選擇:"); scanf("%d",&j
); //選擇修改的資訊 switch(j) //選擇結構! { case 1: printf("學號修改為:"); scanf("%s",s[o].num); break; case 2: printf("姓名修改為:"); scanf("%s",s[o].name); break; case
3: printf("專業修改為:"); scanf("%s",&s[o].mayor); break; case 4: printf("班級修改為:"); scanf("%d",&s[o].Class); break; case 5: printf("成績修改為:"); scanf("%s",&s[o].score); break; case 6: printf("年齡修改為:"); scanf("%d",s[o].age); break; } printf("\n修改成功!\n\n"); system("pause"); system("cls"); } } void sort() //排序(成績) { struct student tmp; int i,j; printf("共排序%d組資料\n\n",n); for(i=0;i<n;i++) { for(j=i+1;j<n;j++) //for雙迴圈對每一個值進行冒泡比較 { if(s[i].score>s[j].score) //前面的值如果大於後面的紙就進行氣泡排序 { tmp=s[i]; //交換內容 s[i]=s[j]; //交換內容 s[j]=tmp; //交換內容 } } } printf("已按照成績排序!\n"); system("pause"); system("cls"); } void save() { int i; FILE *fp; fp=fopen("c.txt","wb"); for(i=0;i<n;i++) if(fwrite(&s[i],sizeof(s),1,fp)!=1) printf("Error"); fclose(fp); printf("\n\n已存入檔案中!!!\n"); system("pause"); system("cls"); } void read() { int i; FILE *fp; fp=fopen("C:\\安之若素\\Administrator\\Desktop\\學生資訊管理系統3個版本\\學生資訊管理系統順序版本4.0\\c.txt","rb"); for(i=0;i<9;i++) fread(&s[i],sizeof(s),1,fp); fclose(fp); printf("\n\n已經讀取檔案!!!\n"); system("pause"); system("cls"); } void find1() { int i; char a[20]; system("cls"); printf("您選擇按姓名查詢:\n"); scanf("%s",&a); for(i=0;i<n;i++) { if(strcmp(a,s[i].name)==0) { printf("\n\n\n%s\t",s[i].name); printf("%s\t\t",s[i].num); printf("%s\t",s[i].Class); printf("%d\t",s[i].age); printf("%d\t",s[i].score); printf("%s",s[i].mayor); printf("\n"); } } system("pause"); system("cls"); } void find2() { int i; char a[20]; system("cls"); printf("您選擇按學號查詢:\n"); scanf("%s",&a); for(i=0;i<n;i++) { if(strcmp(a,s[i].num)==0) { printf("%s\t",s[i].name); printf("%s\t\t",s[i].num); printf("%s\t",s[i].Class); printf("%d\t",s[i].age); printf("%d\t",s[i].score); printf("%s",s[i].mayor); printf("\n"); } } system("pause"); system("cls"); } void main() //主函式 { int a=1; while(1) { if(a>=0&&a<=9) { system("cls"); printf(" \n\n \n\n"); printf(" ******************************************************\n\n"); printf(" * 學生資訊管理系統 *\n \n"); printf(" ******************************************************\n\n"); printf("*********************系統功能選單************************* \n"); printf(" ---------------------- ---------------------- \n"); printf(" ********************************************* \n"); printf(" * 0.增加學生資訊 * * 1.顯示全部資訊 * \n"); printf(" ********************************************* \n"); printf(" * 2.查詢全部資訊 * * 3.刪除學生資訊 * \n"); printf(" ********************************************* \n"); printf(" * 4.修改學生資訊 * * 5.按成績排序 * \n"); printf(" ********************************************* \n"); printf(" * 6.儲存學生資訊 * * 7.讀取學生資訊 * \n"); printf(" ********************** ********************** \n"); printf(" * 8.退出系統 * \n"); printf(" ********************** \n"); printf(" ---------------------- ---------------------- \n"); printf("請選擇:"); scanf("%d",&a); switch(a) { case 1: add(); break; case 2: print(); break; case 3: find(); break; case 4: Delete(); break; case 5: amend(); break; case 6: sort(); break; case 7: save(); break; case 8: read(); break; case 0: exit(0); break; } } else { printf(" 您輸入的不符合要求,請輸入符合要求的數字返回主選單!"); scanf("%d",&a); } } }