學(xué)生學(xué)籍信息管理系統(tǒng)-C語言設(shè)計(jì)_第1頁
學(xué)生學(xué)籍信息管理系統(tǒng)-C語言設(shè)計(jì)_第2頁
學(xué)生學(xué)籍信息管理系統(tǒng)-C語言設(shè)計(jì)_第3頁
學(xué)生學(xué)籍信息管理系統(tǒng)-C語言設(shè)計(jì)_第4頁
學(xué)生學(xué)籍信息管理系統(tǒng)-C語言設(shè)計(jì)_第5頁
已閱讀5頁,還剩24頁未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)

文檔簡介

學(xué)生學(xué)籍信息管理系統(tǒng)目錄1.設(shè)計(jì)目的與要求2.總體設(shè)計(jì)3.詳細(xì)設(shè)計(jì)4.調(diào)試分析5.總結(jié)6.辯論記錄7.教師意見8.附錄主程序1.設(shè)計(jì)目的與要求:1.1【要求】:使用下面的數(shù)據(jù),設(shè)計(jì)一個(gè)簡單的學(xué)籍信息管理系統(tǒng)。學(xué)生根本信息文件(A.TXT)及其內(nèi)容:A.TXT文件不需要編程錄入數(shù)據(jù),可用文本編輯工具直接生成學(xué)號(hào)姓名性別宿舍號(hào)碼號(hào)碼01張成成男5018773211102李成華女1018772311203王成鳳女1018772311204張明明男5028773433305陳東男5018773211106李果男5028773433307張園園女10287756122學(xué)生成績根本信息文件(B.TXT)及其內(nèi)容學(xué)號(hào)課程編號(hào)課程名稱學(xué)分平時(shí)成績實(shí)驗(yàn)成績卷面成績綜合成績學(xué)分01A01大學(xué)物理366788202B03高等數(shù)學(xué)478-19001B03高等數(shù)學(xué)445-18802C01VF3657666功能要求及說明:數(shù)據(jù)錄入功能:對(duì)B.TXT進(jìn)行數(shù)據(jù)錄入,只錄入每個(gè)學(xué)生的學(xué)號(hào)、課程編號(hào)、課程名稱、學(xué)分、平時(shí)成績、實(shí)驗(yàn)成績、卷面成績共7個(gè)數(shù)據(jù).綜合成績、學(xué)分由程序根據(jù)條件自動(dòng)運(yùn)算。綜合成績的計(jì)算:如果本課程的實(shí)驗(yàn)成績?yōu)?1,那么表示無實(shí)驗(yàn),綜合成績=平時(shí)成績*30%+卷面成績*70%;如果實(shí)驗(yàn)成績不為-1,表示本課程有實(shí)驗(yàn),綜合成績=平時(shí)成績*15%+實(shí)驗(yàn)成績*.15%+卷面成績*70%。實(shí)綜合成績?cè)?0-100之間,應(yīng)得學(xué)分=學(xué)分*100%得學(xué)分的計(jì)算:采用等級(jí)學(xué)分制.綜合成績?cè)?0-90之間,應(yīng)得學(xué)分=學(xué)分*80%綜合成績?cè)?0-80之間,應(yīng)得學(xué)分=學(xué)分*75%綜合成績?cè)?0-70之間,應(yīng)得學(xué)分=學(xué)分*60%綜合成績?cè)?0以下,應(yīng)得學(xué)分=學(xué)分*0%〔2〕查詢功能:分為學(xué)生根本情況查詢和成績查詢兩種A:學(xué)生根本情況查詢:A1----輸入一個(gè)學(xué)號(hào)或姓名〔可實(shí)現(xiàn)選擇〕,查出此生的根本信息并顯示輸出。A2---輸入一個(gè)宿舍號(hào)碼,可查詢出本室所有的學(xué)生的根本信息并顯示輸出。B:成績查詢:B1:輸入一個(gè)學(xué)號(hào)時(shí),查詢出此生的所有課程情況,格式如下:學(xué)號(hào):xx姓名:xxxxx課程編號(hào):xxx課程名稱:xxxxx綜合成績:xxxx實(shí)得學(xué)分:xx課程編號(hào):xxx課程名稱:xxxxx綜合成績:xxxx實(shí)得學(xué)分:xx課程編號(hào):xxx課程名稱:xxxxx綜合成績:xxxx實(shí)得學(xué)分:xx共修:xx科,實(shí)得總學(xué)分為:xxx〔3〕刪除功能:當(dāng)在A.TXT中刪除一個(gè)學(xué)生時(shí),自動(dòng)地在B.TXT中刪除此人所有信息?!?〕排序功能:能實(shí)現(xiàn)選擇按綜合成績或?qū)嵉脤W(xué)分升序或降序排序并顯示數(shù)據(jù)1.2【目的】:實(shí)現(xiàn)對(duì)于學(xué)生學(xué)籍信息的查詢以及管理。自動(dòng)錄入,方便快捷。數(shù)據(jù)錄入功能,綜合成績的計(jì)算,查詢功能〔學(xué)生根本情況查詢,成績查詢〕,刪除功能,排序功能等為一體。使學(xué)生學(xué)籍和成績等信息實(shí)現(xiàn)信息化快捷管理。2.總體設(shè)計(jì):經(jīng)過分析整個(gè)系統(tǒng),可以將系統(tǒng)分為五大模塊:信息輸入模塊,信息修改模塊,信息排序模塊,設(shè)備查找模塊和退出模塊。其中主要是前五大個(gè)模塊。所用到的各個(gè)子函數(shù)所用到的各個(gè)子函數(shù)讀取數(shù)據(jù)、計(jì)算菜單顯示數(shù)據(jù)錄入排序查詢讀取數(shù)據(jù)、計(jì)算菜單顯示數(shù)據(jù)錄入排序查詢按實(shí)際學(xué)分按綜合成績查詢成績查詢學(xué)生信息按實(shí)際學(xué)分按綜合成績查詢成績查詢學(xué)生信息3.詳細(xì)設(shè)計(jì):3.1主函數(shù)://******主函數(shù)******#include<stdio.h>#include<string.h>#include<stdlib.h>#include<conio.h>#include<malloc.h>voidmenu(){intc,w1;do{puts("\t\t*********************MENU*********************\n\n");puts("\t\t\t\t1.Inputdata");/*輸入模塊*/puts("\t\t\t\t2.Searchdata");/*查找模塊*/puts("\t\t\t\t3.Deletedata");/*刪除模塊*/puts("\t\t\t\t4.Sortdata");/*排序模塊*/puts("\t\t\t\t5.Exit");/*退出*/puts("\n\n\t\t**********************************************\n");printf("Choicenumber(1-5):[]\b\b");scanf("%d",&c);if(c<1||c>6) { w1=1;getchar(); }elsew1=0;}while(w1==1);switch(c){case1:enter();break;case2:search();break;case3:del();break;case4:sort();break;case5:exit(0);break;}}voidmain(){menu();}3.2公共函數(shù):所用到的六個(gè)公共函數(shù)所用到的六個(gè)公共函數(shù)一個(gè)函數(shù)結(jié)束時(shí)的選擇瀏覽還是返回的函數(shù)顯示數(shù)據(jù)結(jié)構(gòu)工程的函數(shù)保存文件B函數(shù)加載文件B函數(shù) 保存文件A函數(shù)加載文件A函數(shù)一個(gè)函數(shù)結(jié)束時(shí)的選擇瀏覽還是返回的函數(shù)顯示數(shù)據(jù)結(jié)構(gòu)工程的函數(shù)保存文件B函數(shù)加載文件B函數(shù) 保存文件A函數(shù)加載文件A函數(shù)intload_info()/*A文件加載函數(shù)*/{inti;FILE*fp;if((fp=fopen("A.txt","r"))==NULL){printf("\nCannotopenfile\n");return0;}for(i=0;!feof(fp);i++)fscanf(fp,"%s%s%s%s%s",stu[i].num,stu[i].name,stu[i].sex,stu[i].room,stu[i].tel);fclose(fp);return(i);}intsave_info(intn)/*A文件保存函數(shù)*/{inti;FILE*fp;if((fp=fopen("A.txt","w"))==NULL){printf("\nCannotopenfile\n");return0;}for(i=0;i<n;i++)if(strcmp(stu[i].num,"-1")!=0)fprintf(fp,"%s%s%s%s%s\n",stu[i].num,stu[i].name,stu[i].sex,stu[i].room,stu[i].tel);fclose(fp);}intload_score()/*B文件加載函數(shù)*/{floatca_mark(inti);voidca_score(inti);inti,j;FILE*fp;if((fp=fopen("B.txt","r"))==NULL){printf("\nCannotopenfile\n");return0;}for(i=0;!feof(fp);i++){fscanf(fp,"%s%s%s%d",scr[i].num,scr[i].subnum,scr[i].subject,&scr[i].oscore);for(j=0;j<3;j++)fscanf(fp,"%d",&scr[i].mark[j]);ca_mark(i);ca_score(i);}fclose(fp);return(i);}intsave_score(intm)/*B文件保存函數(shù)*/{inti,j;FILE*fp;if((fp=fopen("B.txt","w"))==NULL){printf("\nCannotopenfile\n");return0;}for(i=0;i<m;i++){if(strcmp(scr[i].num,"-1")!=0) {fprintf(fp,"%s%s%s%d%d%d%d%d%d\n",scr[i].num,scr[i].subnum,scr[i].subject,scr[i].oscore,scr[i].mark[0],scr[i].mark[1],scr[i].mark[2],(int)scr[i].totalmark,(int)scr[i].gscore); }}fclose(fp);}voidprintone(inti)/*顯示數(shù)據(jù)結(jié)構(gòu)工程的函數(shù)(公共函數(shù))*/{printf("\n\t%-4s\t%-6s\t%-4s\t%-8s\t%-8s",stu[i].num,stu[i].name,stu[i].sex,stu[i].room,stu[i].tel);}voidprintface()/*公共函數(shù),一個(gè)函數(shù)結(jié)束時(shí)的選擇瀏覽還是返回的函數(shù)*/{printf("\n\t學(xué)號(hào)\t姓名\t性別\t宿舍號(hào)碼\t號(hào)碼\n");}3.3功能模塊的設(shè)計(jì)://///*******信息刪除模塊********開始開始數(shù)據(jù)刪除結(jié)束輸入學(xué)號(hào)voiddel()//刪除模塊{voidmenu();inti,j,c,flag=0;chars[6];printface();for(i=0;i<n;i++)printone(i);puts("\n\n");printf("\nInputthedeletenumber:");scanf("%s",s); printf("\n\nSure?\t1).Sure\t2).No\t3).Back\t[]\b\b");scanf("%d",&c);if(c==1)for(i=0;i<n;i++)if(judge(s,stu[i].num)) { flag=1;strcpy(stu[i].num,"-1");for(j=0;j<m;j++)if(judge(s,scr[i].num))strcpy(scr[i].num,"-1"); break; }if(flag==0){puts("\n\tNotexist!\n");choice_menu(5);}if(c==2){puts("\n\n");del();}if(c==3){puts("\n\n");menu();}save_info(n);save_score(m);load_info();load_score();puts("\n\n\tSuccessfully!.^_^.\n");choice_menu(5);}/////*******開始數(shù)據(jù)排序開始數(shù)據(jù)排序X=1?實(shí)際學(xué)分排序綜合成績排序結(jié)束YNvoidsort()//排序模塊{voidmenu();intc,k,v; printf("\n\nChoicenumber:1).綜合成績\t2).實(shí)得學(xué)分\t[]\b\b");scanf("%d",&c);list_subject();scanf("%d",&k);printf("\n\nChoice:1).從高到低\t2).從低到高\(yùn)t[]\b\b");scanf("%d",&v);sortmark(c,k,v);}voidsortmark(intc,intk,intv){ char*num_name(chars[]);intjudge(chara[],charb[]);chars[4];inti,j=0,i1,j1,k1;structscore*p[100],*t;switch(k){case1:strcpy(s,"A01");break;case2:strcpy(s,"B03");break;case3:strcpy(s,"C01");break;case4:strcpy(s,"D02");break;}for(i=0;i<m;i++)p[i]=NULL;for(i=0;i<m;i++)if(judge(s,scr[i].subnum)){p[j]=&scr[i];j++;}for(i1=0;i1<j-1;i1++){k1=i1;if(c==1)for(j1=i1+1;j1<j;j1++)if(p[k1]->totalmark<p[j1]->totalmark)k1=j1;if(c==2)for(j1=i1+1;j1<j;j1++)if(p[k1]->gscore<p[j1]->gscore)k1=j1;if(i1!=k1){t=p[i1];p[i1]=p[k1];p[k1]=t;}}puts("\n名次姓名\t平時(shí)成績實(shí)驗(yàn)成績卷面成績綜合成績實(shí)得學(xué)分");if(v==1)for(i=0;i<j;i++)printf("%-4d%-8s&%-8d%-8d%-8d%-8.2f%-4.2f",i+1,num_name(p[i]->num),p[i]->mark[0],p[i]->mark[1],p[i]->mark[2],p[i]->totalmark,p[i]->gscore);if(v==2)for(i=j-1;i>=0;i++)printf("%-4d%-8s&%-8d%-8d%-8d%-8.2f%-4.2f",i+1,num_name(p[i]->num),p[i]->mark[0],p[i]->mark[1],p[i]->mark[2],p[i]->totalmark,p[i]->gscore);}4.調(diào)試分析4.1主函數(shù):4.2排序模塊4.3刪除模塊4.4退出5.總結(jié)先就在本程序的編寫過程中出現(xiàn)的問題進(jìn)行說明:首先,對(duì)于數(shù)據(jù)的刪除存在一定的問題,這個(gè)問題是在老師的指導(dǎo)下又經(jīng)過同學(xué)們的幫助才解決的,其間,我明白了結(jié)構(gòu)體數(shù)組中數(shù)據(jù)刪除的根本原理和刪除的方法;其次,在程序編寫過程中,我無視了幾個(gè)需要注意的根本語法,比方,有的變量忘記了定義和標(biāo)識(shí)符的使用等問題,這個(gè)是在同學(xué)的幫助下才檢查出來改正的。這屬于C語言運(yùn)用的根底問題,也是因?yàn)槠綍r(shí)的上機(jī)編程實(shí)習(xí)太少所致,以后還有待于改良;第三,對(duì)于數(shù)組中數(shù)據(jù)的存儲(chǔ)原理存在一定的疑問,這個(gè)是請(qǐng)同學(xué)講解后才加深的理解;第四,就是在程序開始編寫時(shí),整體思路框架的構(gòu)思感覺無從下手,這是一個(gè)長期的問題,需要多多接觸程序,理解更多的程序編寫思路才能做到在白那些之前胸有成竹。這次是請(qǐng)教同學(xué)幫助才得以解決的。這是我第一次相比照擬獨(dú)立的編程,從中感受到了小小的進(jìn)步所帶來的喜悅,更重要的是,通過這次C語言課程設(shè)計(jì)我意識(shí)到了自己在學(xué)習(xí)上的許多缺乏,許多感覺會(huì)的知識(shí)在應(yīng)用時(shí)還是有許多不確定,學(xué)習(xí)C語言,動(dòng)手能力是很重要的,只要通過實(shí)踐才能真正發(fā)現(xiàn)自己的缺乏,使自己的能力真正有所提高。俗話說:“萬事開頭難。〞現(xiàn)在既然開頭已經(jīng)過去了,也大致了解了C語言的學(xué)習(xí)規(guī)律,課本雖然學(xué)完了,但自己需要加強(qiáng)與完善的還有很多。首先,從這個(gè)程序說起。這個(gè)程序的編寫過程中沒有用到很特殊的算法,根本都是老師上課強(qiáng)調(diào)的一些根本算法,讓人做起來感覺還是挺簡單易懂的,這里也體會(huì)到了C語言的靈活性。其次,我認(rèn)為我這個(gè)程序的亮點(diǎn)在于它的整體結(jié)構(gòu)清晰明朗,首先是兩個(gè)結(jié)構(gòu)體,然后就是聲明函數(shù),再往下是主函數(shù)選擇執(zhí)行命令,最后是幾個(gè)用到的被調(diào)用函數(shù)。再次,我體會(huì)到了計(jì)算機(jī)語言的嚴(yán)謹(jǐn)性,C語言課本上的許多微小知識(shí)看似微乎其微,實(shí)那么作用巨大,在程序設(shè)計(jì)過程中,一處小小的知識(shí)死角就可能會(huì)使整個(gè)程序無法運(yùn)行,所以計(jì)算機(jī)語言的學(xué)習(xí)容不得半點(diǎn)兒馬虎,留不得半處死角,不能無視任何一處知識(shí)。此次課程設(shè)計(jì),我在編寫程序,修改程序進(jìn)一步完成作業(yè)的同時(shí),也深深感受到了計(jì)算機(jī)高級(jí)語言的清晰的層次性和運(yùn)用的技巧性,我想這一點(diǎn)無論對(duì)于我們這些初涉計(jì)算機(jī)語言的學(xué)生而言,還是對(duì)于已在計(jì)算機(jī)專業(yè)任教多年的資深教師來說,都是必須認(rèn)識(shí)到的。認(rèn)識(shí)到這一點(diǎn),計(jì)算機(jī)初學(xué)者可以在穩(wěn)固根底的同時(shí)培養(yǎng)探索更加簡潔的思路的意識(shí),資深教師那么可以在計(jì)算機(jī)語言教授過程中起到提綱挈領(lǐng),誘思探究新的教學(xué)方法,使學(xué)生在學(xué)習(xí)計(jì)算機(jī)語言的時(shí)候抓住重點(diǎn),理解難點(diǎn),掌握要點(diǎn)。姓名:黃樊學(xué)號(hào):051111272023-9-6辯論記錄教師意見附錄一:源程序代碼#include<stdio.h>#include<string.h>#include<stdlib.h>#include<conio.h>#include<malloc.h>intn,m;structstudent{charnum[6];charname[20];charsex[3];charroom[5];chartel[10];}stu[10];structscore{ charnum[6];charsubnum[4];charsubject[10];intoscore;intmark[3];floattotalmark;floatgscore;}scr[60];floatca_mark(inti){if(scr[i].mark[1]==-1)scr[i].totalmark=0.3*scr[i].mark[0]+0.7*scr[i].mark[2];elsescr[i].totalmark=0.15*(scr[i].mark[0]+scr[i].mark[1])+0.7*scr[i].mark[2];return(scr[i].totalmark);}voidca_score(inti){intc;c=(int)ca_mark(i)/10;if(c<6)c=5;switch(c){case10:case9:scr[i].gscore=scr[i].oscore;break;case8:scr[i].gscore=0.8*scr[i].oscore;break;case7:scr[i].gscore=0.75*scr[i].oscore;break;case6:scr[i].gscore=0.6*scr[i].oscore;break;case5:scr[i].gscore=0;break;}}intload_info()//加載函數(shù){inti;FILE*fp;if((fp=fopen("A.txt","r"))==NULL){printf("\nCannotopenfile\n");return0;}for(i=0;!feof(fp);i++)fscanf(fp,"%s%s%s%s%s",stu[i].num,stu[i].name,stu[i].sex,stu[i].room,stu[i].tel);fclose(fp);return(i);}intsave_info(intn)//保存函數(shù){inti;FILE*fp;if((fp=fopen("A.txt","w"))==NULL){printf("\nCannotopenfile\n");return0;}for(i=0;i<n;i++)if(strcmp(stu[i].num,"-1")!=0)fprintf(fp,"%s%s%s%s%s\n",stu[i].num,stu[i].name,stu[i].sex,stu[i].room,stu[i].tel);fclose(fp);}intload_score()//加載函數(shù){floatca_mark(inti);voidca_score(inti);inti,j;FILE*fp;if((fp=fopen("B.txt","r"))==NULL){printf("\nCannotopenfile\n");return0;}for(i=0;!feof(fp);i++){fscanf(fp,"%s%s%s%d",scr[i].num,scr[i].subnum,scr[i].subject,&scr[i].oscore);for(j=0;j<3;j++)fscanf(fp,"%d",&scr[i].mark[j]);ca_mark(i);ca_score(i);}fclose(fp);return(i);}intsave_score(intm)//保存函數(shù){inti,j;FILE*fp;if((fp=fopen("B.txt","w"))==NULL){printf("\nCannotopenfile\n");return0;}for(i=0;i<m;i++){if(strcmp(scr[i].num,"-1")!=0) {fprintf(fp,"%s%s%s%d%d%d%d%d%d\n",scr[i].num,scr[i].subnum,scr[i].subject,scr[i].oscore,scr[i].mark[0],scr[i].mark[1],scr[i].mark[2],(int)scr[i].totalmark,(int)scr[i].gscore); }}fclose(fp);}voidprintone(inti){printf("\n\t%-4s\t%-6s\t%-4s\t%-8s\t%-8s",stu[i].num,stu[i].name,stu[i].sex,stu[i].room,stu[i].tel);}voidprintface(){printf("\n\t學(xué)號(hào)\t姓名\t性別\t宿舍號(hào)碼\t號(hào)碼\n");}voidlist_subject(){puts("\n\nChoicesubject:\n");printf("\t1).大學(xué)物理\t2).高等數(shù)學(xué)\t3).VF\t4).大學(xué)英語\n");printf("\nChoicenumber(1-4):[]\b\b");}voidsortmark(intc,intk,intv){ char*num_name(chars[]);intjudge(chara[],charb[]);chars[4];inti,j=0,i1,j1,k1;structscore*p[100],*t;switch(k){case1:strcpy(s,"A01");break;case2:strcpy(s,"B03");break;case3:strcpy(s,"C01");break;case4:strcpy(s,"D02");break;}for(i=0;i<m;i++)p[i]=NULL;for(i=0;i<m;i++)if(judge(s,scr[i].subnum)){p[i]=&scr[i];j++;}for(i1=0;i1<j-1;i1++){k1=i1;if(c==1)for(j1=i1+1;j1<j;j1++)if(p[k1]->totalmark<p[j1]->totalmark)k1=j1;if(c==2)for(j1=i1+1;j1<j;j1++)if(p[k1]->gscore<p[j1]->gscore)k1=j1;if(i1!=k1){t=p[i1];p[i1]=p[k1];p[k1]=t;}}puts("\n名次姓名\t平時(shí)成績實(shí)驗(yàn)成績卷面成績綜合成績實(shí)得學(xué)分");if(v==1)for(i=0;i<j;i++)printf("%-4d%-8s&%-8d%-8d%-8d%-8.2f%-4.2f",i+1,num_name(p[i]->num),p[i]->mark[0],p[i]->mark[1],p[i]->mark[2],p[i]->totalmark,p[i]->gscore);if(v==2)for(i=j-1;i>=0;i++)printf("%-4d%-8s&%-8d%-8d%-8d%-8.2f%-4.2f",i+1,num_name(p[i]->num),p[i]->mark[0],p[i]->mark[1],p[i]->mark[2],p[i]->totalmark,p[i]->gscore);}intjudge(chara[],charb[]){if(strcmp(a,b)==0)return1;elsereturn0;}char*num_name(chars[]){char*p;inti;for(i=0;i<n;i++)if(judge(s,stu[i].num)) { p=stu[i].num+6;return(p);break; }}voidsearchone(intk){voidchoice_menu(intk);chars[20];inti,flag=0;if(k==1){printf("\nInputthenumber:");}if(k==2){printf("\nInputthename:");}scanf("%s",s);for(i=0;i<n;i++){ if(k==1) if(judge(s,stu[i].num)) {printface();printone(i); flag=1;puts("\n\n\tSuccessfully!\n");choice_menu(k); }if(k==2)if(judge(s,stu[i].name)) {printface();printone(i); flag=1;puts("\n\n\tSuccessfully!\n");choice_menu(k); }}if(flag==0&&k==1)puts("\n\n\tNotexist!\n");if(flag==0&&k==2)puts("\n\n\tNotexist!\n");choice_menu(k);}voidsearchroom()//按寢室查詢{voidchoice_menu(intk);inti,flag=0;chars[3];printf("\nInputtheroomnumber:");scanf("%s",s);printface();for(i=0;i<n;i++)if(judge(s,stu[i].room)){printone(i);flag=1;}puts("\n");if(flag==0)puts("\n\n\tNotexist!\n");choice_menu(3);}voidsearch_onescore()//成績查詢{voidchoice_menu(intk);inti,j=0,flag=0;chars[6];floatsum;printf("\nInputthenumber:");scanf("%s",s);for(i=0,sum=0;i<m;i++){if(judge(s,scr[i].num)) {if(j==0)printf("\n\n學(xué)號(hào):%-6s\t姓名:%s",s,num_name(s));printf("\n課程編號(hào):%-6s\t課程名稱:%-10s\t綜合成績:%-6.2f\t實(shí)得學(xué)分:%-4.2f",scr[i].subnum,scr[i].subject,scr[i].totalmark,scr[i].gscore);sum+=scr[i].gscore;flag=1;j++; }}if(flag==1)printf("\n共修:%d科,實(shí)得總學(xué)分為:%-6.2f\n",j,sum);if(flag==0)puts("\n\nNotexist!\n");choice_menu(4);}voidsearch_choice(intk)//查找選項(xiàng){voiddel();switch(k){case1:case2:searchone(k);break;case3:searchroom();break;case4:search_onescore();break;case5:del();break;}}voidsearch_info(){voidsearch_person();voidsearch();intc;puts("\t\t\t\t1.Byperson");puts("\t\t\t\t2.Byroom");puts("\t\t\t\t3.Back");printf("\n\nChoicenumber(1-3):[]\b\b");scanf("%d",&c);switch(c){case1:search_person();break;case2:searchroom();break;case3:search();}}voidsearch_person()//按人查找{intc;puts("\t\t\t\t1.Bynumber");puts("\t\t\t\t2.Byname");puts("\t\t\t\t3.Back");printf("\n\nChoicenumber(1-3):[]\b\b");scanf("%d",&c);switch(c){case1:case2:searchone(c);break;case3:search_info();}}voidchoice_menu(intk){voidsearch();voidmenu();voidmenu();intc,w;puts("\nWhatdoyouwanttodo?:\n");switch(k){case1:puts("\n\t1).繼續(xù)按學(xué)號(hào)查詢");break;case2:puts("\n\t1).繼續(xù)按姓名查詢");break;case3:puts("\n\t1).繼續(xù)按宿舍號(hào)碼查詢");break;case4:puts("\n\t1).繼續(xù)查詢成績");break;case5:puts("\n\t1).continue");break;}printf("\t2).Return\n\t3).Backtomenu\n\n\tChoicenumber:[]\b\b");scanf("%d",&c);switch(c){case1:search_choice(k);break;case2:search();break;case3:menu();break;}}voidenter()//錄入模塊{voidmenu();n=load_info();m=load_score();puts("\nSuccessful!.^_^.\nPressanykeytocontinue...");getch();menu();}voidsearch()//查找菜單{voidmenu();intc;puts("\t\t\t\t1.Basicinformation");puts("\t\t\t\t2.Searchscore");puts("\t\t\t\t3.Back");printf("\n\nChoicenumber(1-3):[]\b\b");scanf("%d",&c);switch(c){case1:search_info();break;case2:search_onescore();break;case3:menu();}}voiddel()//刪除模塊{voidmenu();inti,j,c,flag=0;chars[6];printface();for(i=0;i<n;i++)printone(i

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(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ì)自己和他人造成任何形式的傷害或損失。

評(píng)論

0/150

提交評(píng)論