1. <nobr id="easjo"><address id="easjo"></address></nobr>

      <track id="easjo"><source id="easjo"></source></track>
      1. 
        

      2. <bdo id="easjo"><optgroup id="easjo"></optgroup></bdo>
      3. <track id="easjo"><source id="easjo"><em id="easjo"></em></source></track><option id="easjo"><span id="easjo"><em id="easjo"></em></span></option>
          貴州做網站公司
          貴州做網站公司~專業!靠譜!
          10年網站模板開發經驗,熟悉國內外開源網站程序,包括DEDECMS,WordPress,ZBlog,Discuz! 等網站程序,可為您提供網站建設,網站克隆,仿站,網頁設計,網站制作,網站推廣優化等服務。我們專注高端營銷型網站,企業官網,集團官網,自適應網站,手機網站,網絡營銷,網站優化,網站服務器環境搭建以及托管運維等。為客戶提供一站式網站解決方案?。?!

          C語言學生成績管理系統「建議收藏」

          來源:互聯網轉載 時間:2024-01-29 07:49:24

          實現如下功能: 1)能夠實現學生成績信息的插入、刪除和修改; 2)能夠實現各種查詢(分別根據學生學號、姓名、課程名稱等); 3)能夠實現按照考試成績、總評成績進行排序; 4)能夠查詢某門課程的最高分、最低分并輸出相應學生信息; 5)能夠查詢某門課程的優秀率(90 分及以上)、不及格率;

          學生成績管理系統設計與實現 1) 系統功能模塊 學生成績管理系統主要功能是。。。。 模塊結構如“圖1-1系統功能結構圖”所示。

          圖1-1 系統功能結構圖

          我是事先定義了: typedef struct Node { int num; char name[12]; char subject[10]; float ave; float labscore; float exam; float sum; }student; ① “學生成績信息輸入”主要完成輸入學生們的學號、姓名、課程名、平時成績、實驗成績、考試成績、總成績

          函數定義:void input( student *stu) ; 返 回 值:無 形 參:學生信息結構指針

          ② 修改或刪除學生成績信息主要完成學生信息的修改替換或者刪除該學生的所有成績信息 函數定義:void modify( student *stu) ; 返 回 值:無 形 參:學生信息結構指針

          函數定義:void del( student *stu) ; 返 回 值:無 形 參:學生信息結構指針

          ③ 成績查詢主要完成學生成績信息的查詢,可以按姓名查詢,也可以按學號查詢,還可以按課程名查詢,還可以查詢總分分數段的學生人數和在此分數段的學生成績信息…… 函數定義:void nameseek( student *stu) ; 返 回 值:無 形 參:學生信息結構指針

          函數定義:void numseek( student *stu) ; 返 回 值:無 形 參:學生信息結構指針

          函數定義:void subject( student *stu) ; 返 回 值:無 形 參:學生信息結構指針

          函數定義:void sumseek( student *stu) ; 返 回 值:無 形 參:學生信息結構指針

          ④成績統計主要完成學生成績信息的統計,可以統計班上學生的總分排名,可以統計分數段的學生人數和學生信息,也可以統計班級及格率(sum>60),還可以統計班級優秀率(sum>85), 函數定義:void sumsort( student *stu) ; 返 回 值:無 形 參:學生信息結構指針

          函數定義:void sumseek( student *stu) ; 返 回 值:無 形 參:學生信息結構指針

          函數定義:void paserate( student *stu) ; 返 回 值:無 形 參:學生信息結構指針

          函數定義:void excellentrate( student *stu) ; 返 回 值:無 形 參:學生信息結構指針

          ⑤系統終止 當輸入操作指令11,value==11時,跳出while循環包含的switch選擇結構,系統結束

          2).主要模塊流程圖 ①主控模塊

          TIP:每個個函數執行后都在函數中重新調用文件指針將改變后的數據輸入文件,保存更改后的數據 圖2-1 主控模塊流程圖

          ②學生信息輸入模塊(學生基本信息)

          ③學生信息查詢模塊

          文本TXT

          附錄:主控模塊:int main(){    system("color E1");int value=-1,i;float min,max;char shuru[3],c;FILE *fp=NULL;char user[] = "dijia"; char key[] = "110"; char user2[12],key2[12]; printf("請輸入用戶名:n"); scanf("%s",&user2); printf("請輸入密碼:n"); scanf("%s",&key2);if(strcmp(user,user2) !=0 || strcmp(key,key2) !=0){    printf("用戶名或密碼錯誤!!!");exit(0);                                              //***}printf("密碼正確!nn");void menu();                                              //函數聲明void input(student*);void modify(student*);void del(student *);void nameseek(student *);void numseek(student *);void subject(student *);void sumseek(student *,float ,float );void sumsort(student *);void paserate(student *);void excellentrate(student *);menu();printf("您是否曾經輸入過成績?(如果曾經輸入過,就無需再輸入成績,可直接從之前的保存的文件讀入)請輸入 'yes' or 'no'n");scanf("%s",shuru);if((strcmp(shuru,"yes"))==0){    printf("無需再輸入!");if((fp=fopen("stu.txt","r"))==NULL)//打開文本,讀入數據{    printf("File open wrong!");exit(0);} while((c=fgetc(fp))!=EOF) {      if(c=='n')   size++;  }  /*****************************  上面在計算行數的時候文件指針  已經指向文件末尾,所以要從新給  他賦值,讓他指向文件頭  ******************************/  fp=fopen("stu.txt","r");for(i=0;i<size;i++)                        fscanf(fp,"%d %s %s %f %f %f %f",&stu[i].num,stu[i].name,stu[i].subject,&stu[i].ave,&stu[i].labscore,&stu[i].exam,&stu[i].sum);fclose(fp);}elseprintf("n 進行其它操作前請先輸入操作指令1輸入學生成績!否則出錯概不負責!nn"); while(value!=11){    printf("n");printf("請選擇所要執行的操作:n");scanf("%d",&value);switch(value){    case 1:input(stu);break;case 2:modify(stu);break;case 3:del(stu);break;case 4:nameseek(stu);break;case 5:numseek(stu);break;case 6:subject(stu);break;case 7:printf("請輸入查詢的分數段范圍:n");printf("最低分數 min=");scanf("%f",&min);printf("最高分數 max=");scanf("%f",&max);sumseek(stu,min,max);break;case 8:sumsort(stu);break;case 9:paserate(stu);break;case 10:excellentrate(stu);break;case 11:printf("退出成功!");break;default:printf("輸入信息有誤!!!");}}return 0;}輸入模塊:void input(student *stu){    int i,add=0;FILE *fp;int count=0;printf("請輸入你要錄入學生信息的個數n:");scanf("%d",&add);count=size+add;for(i=size;i<count;i++){    printf("請輸入學生的學號:n");scanf("%d",&stu[i].num);printf("請輸入學生的名字:n");scanf("%s",&stu[i].name);printf("請輸入學生的課程名:n");scanf("%s",&stu[i].subject);printf("請輸入學生的平時成績:n");scanf("%f",&stu[i].ave);printf("請輸入學生的實驗成績:n");scanf("%f",&stu[i].labscore);printf("請輸入學生的考試成績:n");scanf("%f",&stu[i].exam);stu[i].sum=0.2*stu[i].ave+0.3*stu[i].labscore+0.5*stu[i].exam;size++;}if((fp=fopen("stu.txt","w"))==NULL){    printf("File open wrong!");exit(0);}for(i=0;i<size;i++)fprintf(fp,"%dt%st%st%.2ft%.2ft%.2ft%.2fn",stu[i].num,stu[i].name,stu[i].subject,stu[i].ave,stu[i].labscore,stu[i].exam,stu[i].sum);fclose(fp);}查詢模塊:void nameseek(student *stu){    int i;char name1[12];printf("請輸入你要查詢的學生名字叫:n");scanf("%s",name1);for(i=0;i<size;i++){    if(strcmp(stu[i].name,name1)==0){    printf("學號t姓名t課程名t平時成績t實驗成績t考試成績t總成績n");printf("%dt%st%st%.2ftt%.2ftt%.2ftt%.2fn",stu[i].num,stu[i].name,stu[i].subject,stu[i].ave,stu[i].labscore,stu[i].exam,stu[i].sum);return;}}printf("系統無該學生!n");}void numseek(student *stu){    int i;char num1;printf("請輸入你要查詢的學生學號為:n");scanf("%d",&num1);for(i=0;i<size;i++){    if(stu[i].num==num1){    printf("學號t姓名t課程名t平時成績t實驗成績t考試成績t總成績n");printf("%dt%st%st%.2ftt%.2ftt%.2ftt%.2fn",stu[i].num,stu[i].name,stu[i].subject,stu[i].ave,stu[i].labscore,stu[i].exam,stu[i].sum);return;}}printf("系統無該學生!n");}void subject(student *stu){    int i,flag=0;char subject1[10];printf("請輸入你要查詢的學生課程名為:n");scanf("%s",subject1);for(i=0;i<size;i++){    if(strcmp(stu[i].subject,subject1)==0){    if(flag==0)printf("學號t姓名t課程名t平時成績t實驗成績t考試成績t總成績n");flag=1;printf("%dt%st%st%.2ftt%.2ftt%.2ftt%.2fn",stu[i].num,stu[i].name,stu[i].subject,stu[i].ave,stu[i].labscore,stu[i].exam,stu[i].sum);}}if(flag==0)printf("系統無該學生!n");}void sumseek(student *stu,float min,float max){    int i,flag=1;for(i=0;i<size;i++){    if((stu[i].sum>min)&&(stu[i].sum<max)){    if(flag)printf("學號t姓名t課程名t平時成績t實驗成績t考試成績t總成績n");flag=0;printf("%dt%st%st%.2ftt%.2ftt%.2ftt%.2fn",stu[i].num,stu[i].name,stu[i].subject,stu[i].ave,stu[i].labscore,stu[i].exam,stu[i].sum);}}if(flag==1)printf("沒有在此分數段的學生!");}void sumsort(student *stu){    int i,j,flag=1;float minsum=100;student tem;for(i=0;i<size;i++){    if(flag==0) break;else{    flag=0;for(j=0;j<size-i;j++){    if(stu[j].sum<stu[j+1].sum){    tem=stu[j+1];stu[j+1]=stu[j];stu[j]=tem;flag=1;}}}}printf("總分成績排名:n");printf("學號t姓名t課程名t平時成績t實驗成績t考試成績t總成績n");for(i=0;i<size;i++)printf("%dt%st%st%.2ftt%.2ftt%.2ftt%.2fn",stu[i].num,stu[i].name,stu[i].subject,stu[i].ave,stu[i].labscore,stu[i].exam,stu[i].sum);}void paserate(student *stu){    int count=0,i;float pass=60.0;for(i=0;i<size;i++){    if(stu[i].sum>=pass)++count;}printf("及格通過率==%.2fn",(float)count/(float)size);}void excellentrate(student *stu){    int count=0,i;float excellent=85.0;for(i=0;i<size;i++){    if(stu[i].sum>=excellent)++count;}printf("優秀率==%.2fn",float(count)/(float)size);}

          151570.html

          網絡推廣與網站優化公司(網絡優化與推廣專家)作為數字營銷領域的核心服務提供方,其價值在于通過技術手段與策略規劃幫助企業提升線上曝光度、用戶轉化率及品牌影響力。這...

          在當今數字化時代,公司網站已成為企業展示形象、傳遞信息和開展業務的重要平臺。然而,對于許多公司來說,網站建設的價格是一個關鍵考量因素。本文將圍繞“公司網站建設價...

          在當今的數字化時代,企業網站已成為企業展示形象、吸引客戶和開展業務的重要平臺。然而,對于許多中小企業來說,高昂的網站建設費用可能會成為其發展的瓶頸。幸運的是,隨...

          我的IPHONE怎么升級ISO7?越獄后的iphone只能通過itunes來升級,截至2015/9/26,只能升級到IOS9,不能升級IOS7,升級步驟:1、iphone關機狀態,使用數據線連接電腦,打開電腦的iTunes軟件。2、按住Power鍵2秒。3、在不放開Power鍵的狀態下,按Home 鍵10秒,強制關機。4、不放開Home鍵,輕按Power鍵1次。保持不放開Home鍵15秒左右,手機...

          2022奔馳gle400新款報價?glglc400奔馳什么價?奔馳GLC400官方指導價47.12萬元,牌照費500元,購置稅35381元,車船稅480元,交強險950元,商業險13576元。全款買的話,加起來52.99萬。當然,現在這款車優惠4萬左右,也就是落地價48.99萬。如果分期購買,需要多花2.3萬元,共計51.29萬元。glc400奔馳什么價?報價:38.6萬-61.9萬;指導價:39...

          平板上的英特爾z8500相當于臺式機什么級別的處理器?Intel z8500相當于臺式機E2100,因為在過去的五年中沒有這樣低性能的處理器。Z系列處理器是inter為上網本或平板電腦開發的超低功耗(約4W)處理器。你不能玩游戲。性能遠遠不夠,即使是lol級別最低的特效小網游,也卡爆了corem和z8700或z8500性能差距多大?差別很大。Z8700是471,比snapdragon 810好。Z...

          TOP
          国产初高中生视频在线观看|亚洲一区中文|久久亚洲欧美国产精品|黄色网站入口免费进人
          1. <nobr id="easjo"><address id="easjo"></address></nobr>

              <track id="easjo"><source id="easjo"></source></track>
              1. 
                

              2. <bdo id="easjo"><optgroup id="easjo"></optgroup></bdo>
              3. <track id="easjo"><source id="easjo"><em id="easjo"></em></source></track><option id="easjo"><span id="easjo"><em id="easjo"></em></span></option>