亚洲香蕉成人av网站在线观看_欧美精品成人91久久久久久久_久久久久久久久久久亚洲_热久久视久久精品18亚洲精品_国产精自产拍久久久久久_亚洲色图国产精品_91精品国产网站_中文字幕欧美日韩精品_国产精品久久久久久亚洲调教_国产精品久久一区_性夜试看影院91社区_97在线观看视频国产_68精品久久久久久欧美_欧美精品在线观看_国产精品一区二区久久精品_欧美老女人bb

首頁 > 編程 > C++ > 正文

C語言學籍管理系統源代碼

2020-05-23 13:34:19
字體:
來源:轉載
供稿:網友

C語言學籍管理系統,整理一份,供大家參考,具體內容如下

#include <stdio.h> #include <conio.h> #include <stdlib.h> #define N 100 void mycreat(); void mynewcreat(); void mydisplay(); void myretake(); void myselect(); void mynumsort(); void mysort(); void myprint1(); void myprint2(); void myprint3(); void myfenduan(); struct student {  char name[10];  int grade[5];  double ave;  char num[10];   }; void myprint1() {  char choose='/0',yes_no='/0';  do  {   system("cls");   printf ("  |---------------------------|/n");   printf ("  | 請輸入選項編號(0-4)  |/n");   printf ("  |---------------------------|/n");   printf ("  | 1----------錄入成績  |/n");   printf ("  | 2----------統計成績  |/n");   printf ("  | 3----------處理學籍  |/n");   printf ("  | 4----------顯示數據  |/n");   printf ("  | 0----------退出系統  |/n");   printf ("  |---------------------------|/n");   printf("      ");   choose=getche();   switch(choose)   { case '1':mycreat(); break;     case '2':myprint2(); break;     case '3':myprint3(); break;     case '4':mydisplay(); break;     case '0':break;    default :printf("/n      %c為非法選項!/n",choose);   }   if(choose=='0')    {     printf("/n");    printf("感謝您的使用!/n");    break;    }   printf("/n      要繼續選擇嗎(Y/N)?/n");   do   { yes_no=getch( );   } while(yes_no!='Y' && yes_no!='y'&& yes_no!='N' && yes_no!='n');   } while(yes_no=='Y' || yes_no=='y'); }   void myprint2() {  char choose='/0',yes_no='/0';  do  {   system("cls");   printf ("  |-----------------------------------|/n");   printf ("  | 請輸入選項編號(0-4)    |/n");   printf ("  |-----------------------------------|/n");   printf ("  | 1----------按學號排序   |/n");   printf ("  | 2----------計算平均分并排序  |/n");   printf ("  | 3----------統計分數段   |/n");   printf ("  | 4----------返回     |/n");   printf ("  | 0----------退出系統    |/n");   printf ("  |-----------------------------------|/n");   printf("      ");   choose=getche();   switch(choose)   { case '1':mynumsort(); break;      case '2':mysort(); break;     case '3':myfenduan(); break;      case '4':myprint1(); break;     case '0':break;    default :printf("/n      %c為非法選項!/n",choose);   }   if(choose=='0')    {     printf("/n");    printf("感謝您的使用!/n");    break;    }   printf("/n      要繼續選擇嗎(Y/N)?/n");   do   { yes_no=getch( );   } while(yes_no!='Y' && yes_no!='y'&& yes_no!='N' && yes_no!='n');   } while(yes_no=='Y' || yes_no=='y'); }  void myprint3() {  char choose='/0',yes_no='/0';  do  {   system("cls");   printf ("  |---------------------------------------|/n");   printf ("  | 請輸入選項編號(0-4)     |/n");   printf ("  |---------------------------------------|/n");   printf ("  | 1----------生成并打印補考通知單  |/n");   printf ("  | 2----------生成并打印退學通知單  |/n");   printf ("  | 3----------生成并打印新名冊   |/n");   printf ("  | 4----------返回      |/n");   printf ("  | 0----------退出系統     |/n");   printf ("  |---------------------------------------|/n");   printf("      ");   choose=getche();   switch(choose)   { case '1':myretake(); break;     case '2':myselect(); break;     case '3':mynewcreat(); break;     case '4':myprint1(); break;     case '0':break;    default :printf("/n      %c為非法選項!/n",choose);   }   if(choose=='0')    {     printf("/n");    printf("感謝您的使用!/n");    break;    }   printf("/n      要繼續選擇嗎(Y/N)?/n");   do   { yes_no=getch( );   } while(yes_no!='Y' && yes_no!='y'&& yes_no!='N' && yes_no!='n');   } while(yes_no=='Y' || yes_no=='y'); }  void mycreat() {  int i=1,j=0;  struct student temp={0};  FILE*fp=NULL;  fp=fopen("d://yuan.dat","w");  if(fp==NULL)  {   printf("打開文件失??!/n");   return;  }  system("cls");  printf("注意:輸入學號時請將所有位數保持一致不足位用0補齊。例如最大學號為1000則均保持4位有效數字。");  printf("/n  請輸入第1個記錄:/n");  printf("  學號(用#結束輸入):");  do  {   gets(temp.num);  }while(strcmp(temp.num,"")==0);  printf("  姓名(用#結束輸入):");  gets(temp.name);  printf(" 請輸入 高數 英語 物理 編程 馬哲 5組成績(用#結束輸入): ");  for(j=0;j<=4;j++)  {   scanf("%d",&temp.grade[j]);  }   while(temp.num[0]!='#'&&temp.name[0]!='#'&&temp.grade[0]!='#')  {   fprintf(fp,"%23s%15s",temp.num,temp.name);   for(j=0;j<=4;j++)   {    fprintf(fp,"%5d",temp.grade[j]);   }   fprintf(fp,"/n");   i++;   printf("/n   請輸入第%d個記錄:/n",i);   printf("   學號(用#結束輸入):");   do   {    gets(temp.num);   }while(strcmp(temp.num,"")==0);    printf("  姓名(用#結束輸入):");   gets(temp.name);   printf(" 請輸入 高數 英語 物理 編程 馬哲 5組成績 (用#結束輸入): ");   for(j=0;j<=4;j++)   {    scanf("%8d",&temp.grade[j]);   }   }  fclose(fp); } void mynumsort() {  int i=0,j=0,k=0,n=0,grade=0,num=0,m=0,ww;  struct student temp[N]={0};  struct student a;  FILE *fp=NULL;  FILE *fq=NULL;  fp=fopen("d://yuan.dat","r");  if(fp==NULL)  {   printf("/n  打開文件失敗!/n");   return;   }  system("cls");  while(feof(fp)==0)  {   ww=fscanf(fp,"%23s%15s",temp[n].num,temp[n].name);   if(ww==-1) break;   for(j=0;j<5;j++)   {    fscanf(fp,"%d",&temp[n].grade[j]);       }   n++;  }  printf("n=%d",n);  fclose(fp);  printf("/n");  for(i=0; i<n; i++)      { k=i;   for(j=k+1; j<n; j++)    if(strcmp(temp[k].num,temp[j].num)>0)     k=j;   a=temp[i];   temp[i]=temp[k];   temp[k]=a;  }  for(k=0;k<n;k++)  {   printf("%10s號 %10s同學",temp[k].num,temp[k].name);   for(m=0;m<5;m++)   {    printf("%5d分",temp[k].grade[m]);   }   printf("/n");  }  if(n==0)printf("/n  文件中無記錄!/n");  else printf("/n   文件中有%d個記錄",n);   fq=fopen("d://std.dat","w");  if(fq==NULL)  {   printf("打開文件失??!/n");   exit(0);  }  for(i=0;i<n;i++)  {   fprintf(fq,"%23s%15s",temp[i].num,temp[i].name);   for(j=0;j<5;j++)   {    fprintf(fq,"%2d",temp[i].grade[j]);   }   fprintf(fq,"/n");  }  fclose(fq);  printf("計算已完成 保存在d:/std.dat文件當中,請查驗"); } void mysort() {  struct student temp[N]={0},a[N]={0};  int i=0,j=0,n=0,ww=0;  FILE*fp=NULL;  FILE*fq=NULL;  fp=fopen("d://yuan.dat","r");  if(fp==NULL)  {   printf("打開文件失?。?n");   exit(0);  }  system("cls");  while(feof(fp)==0)  {   ww=fscanf(fp,"%23s%15s",temp[n].num,temp[n].name);   if(ww==-1) break;   for(j=0;j<5;j++)   {    fscanf(fp,"%d",&temp[n].grade[j]);       }   n++;  }   for(i=0;i<n;i++)  {   for(j=0;j<5;j++)   {    temp[i].ave=temp[i].ave+temp[i].grade[j];   }   temp[i].ave=temp[i].ave/5;     }  for(i=0;i<n;i++)  {   if(temp[i].ave<temp[i+1].ave)   {    a[i]=temp[i];    temp[i]=temp[i+1];    temp[i+1]=a[i];   }  }  fq=fopen("d://sort.dat","w");  if(fq==NULL)  {   printf("打開文件失??!/n");   exit(0);  }  for(i=0;i<n;i++)  {   fprintf(fq,"%23s%15s%10.2f",temp[i].num,temp[i].name,temp[i].ave );    for(j=0;j<5;j++)   {    fprintf(fq,"%2d",temp[i].grade[j]);   }   fprintf(fq,"/n");  }   fclose(fq);  printf("計算已完成 保存在d:/sort.dat文件當中,請查驗"); }  void myfenduan() {   int i=0,j=0,n=0,ww;  int b[N]={0},c[N]={0},d[N]={0},e[N]={0},f[N]={0};  struct student temp[N]={0};  FILE*fp=NULL;  fp=fopen("d://yuan.dat","r");  if(fp==NULL)  {   printf("打開文件失??!/n");   return;  }  system("cls");  while(feof(fp)==0)  {   ww=fscanf(fp,"%23s%15s",temp[n].num,temp[n].name);   if(ww==-1) break;   for(j=0;j<5;j++)   {    fscanf(fp,"%d",&temp[n].grade[j]);       }   n++;  }  for(i=0;i<n;i++)  {   for(j=0;j<5;j++)    {     if(temp[i].grade[j]>=90)      b[j]=b[j]+1;     else if(temp[i].grade[j]>=80)      c[j]=c[j]+1;     else if(temp[i].grade[j]>=70)      d[j]=d[j]+1;     else if(temp[i].grade[j]>=60)      e[j]=e[j]+1;     else f[j]=f[j]+1;    }  }  printf("各門課、各分數段學生的人數/n");  printf("________________________________________________________/n");  printf("  |90分以上 | 80~89分 | 70~79分 | 60~69分 | 60分以下 /n");  printf("--------------------------------------------------------/n");  printf("高數_____%d________%d_________%d________%d_________%d___/n",b[0],c[0],d[0],e[0],f[0]);  printf("__________________________________________________/n");  printf("英語_____%d________%d_________%d________%d_________%d___/n",b[1],c[1],d[1],e[1],f[1]);  printf("__________________________________________________/n");  printf("物理_____%d________%d_________%d________%d_________%d___/n",b[2],c[2],d[2],e[2],f[2]);  printf("__________________________________________________/n");  printf("編程_____%d________%d_________%d________%d_________%d___/n",b[3],c[3],d[3],e[3],f[3]);  printf("__________________________________________________/n");  printf("馬哲_____%d________%d_________%d________%d_________%d___/n",b[4],c[4],d[4],e[4],f[4]);  printf("__________________________________________________/n");  fclose(fp); } void mydisplay() { int n=0,j=0,k=0,m=0,ww;  struct student temp[N]={0};  FILE*fp=NULL;  fp=fopen("d://yuan.dat","r");  if(fp==NULL)  {   printf("打開文件失敗!/n");   return;  }  system("cls");  while(feof(fp)==0)  {   ww=fscanf(fp,"%23s%15s",temp[n].num,temp[n].name);   if(ww==-1) break;   for(j=0;j<5;j++)   {    fscanf(fp,"%d",&temp[n].grade[j]);       }   n++;  }  for(k=0;k<n;k++)  {   printf("%23s %15s ",temp[k].num,temp[k].name);     for(m=0;m<5;m++)   {    printf("%d ",temp[k].grade[m]);   }   printf("/n");  }  if(n==0)printf("/n 文件中無記錄!/n");  else printf("/n  文件中共有%d個記錄!",n);  fclose(fp); }   void myretake() {  int i=0,e=0,j=0,n=0,s[5]={0},ww;  struct student temp[N]={0};  FILE*fp=NULL;  fp=fopen("d://yuan.dat","r");  if(fp==NULL)  {   printf("打開文件失??!/n");   return;  }  while(feof(fp)==0)  {   ww=fscanf(fp,"%23s%15s",temp[n].num,temp[n].name);   if(ww==-1) break;   for(j=0;j<5;j++)   {    fscanf(fp,"%d",&temp[n].grade[j]);       }   n++;  }  for (i=0;i<n;i++)  {   for(j=0;j<5;j++)   {    if(temp[i].grade[j]<60)    s[i]++;   }      if(s[i]>=1 && s[i]<=3)   { printf("/n");    printf("學號%10s 姓名%10s /n",temp[i].num,temp[i].name);   if(temp[i].grade[0]<60)    printf("%10s您的高數成績為%6d,需要補考,請于2011年2月26日上午9點在教學樓5023教室進行補考考試/n",temp[i].name,temp[i].grade[0]);      if(temp[i].grade[1]<60)    printf("%10s您的英語成績為%6d,需要補考,請于2011年2月27日上午9點在教學樓5023教室進行補考考試/n",temp[i].name,temp[i].grade[1]);      if(temp[i].grade[2]<60)    printf("%10s您的物理成績為%6d,需要補考,請于2011年2月28日上午9點在教學樓5023教室進行補考考試/n",temp[i].name,temp[i].grade[2]);      if(temp[i].grade[3]<60)    printf("%10s您的編程成績為%6d,需要補考,請于2011年2月26日下午3點在教學樓5023教室進行補考考試/n",temp[i].name,temp[i].grade[3]);      if(temp[i].grade[4]<60)    printf("%10s您的馬哲成績為%6d,需要補考,請于2011年2月28日下午3點在教學樓5023教室進行補考考試/n",temp[i].name,temp[i].grade[4]);   }  }  for(e=0;e<n;e++)  {   if(s[e]!=0)   {    printf("/n");    printf("以上學生需要補考!");   }   else   {    printf("/n");    printf("沒有學生需要補考!");   }   break;  } } void myselect() {  int i=0,k=0,s[5]={0},n=0,j=0,ww;  struct student temp[N]={0};  FILE*fp=NULL;  fp=fopen("d://yuan.dat","r");  if(fp==NULL)  {   printf("打開文件失?。?n");   return;  }  while(feof(fp)==0)  {   ww=fscanf(fp,"%23s%15s",temp[n].num,temp[n].name);      for(j=0;j<5;j++)    {     ww=fscanf(fp,"%d",&temp[n].grade[j]);     if(ww==-1) break;   }   n++;  }   for(i=0;i<n-1;i++)   {        for(k=0;k<5;k++)     {     if (temp[i].grade[k]<60)      s[i]=s[i]+1;     }      if(s[i]>3)    {     printf("/n");     printf("學號%10s 姓名%10s 由于您不及格的科目為%d門(多于3門),因此退學。/n",temp[i].num,temp[i].name,s[i]);     if (temp[i].grade[0]<60)      printf("%15s您的高數成績為%6d,為不及格。/n",temp[i].name,temp[i].grade[0]);           if (temp[i].grade[1]<60)      printf("%15s您的英語成績為%6d,為不及格。/n",temp[i].name,temp[i].grade[1]);           if (temp[i].grade[2]<60)      printf("%15s您的物理成績為%6d,為不及格。/n",temp[i].name,temp[i].grade[2]);           if (temp[i].grade[3]<60)      printf("%15s您的編程成績為%6d,為不及格。/n",temp[i].name,temp[i].grade[3]);           if (temp[i].grade[4]<60)      printf("%15s您的馬哲成績為%6d,為不及格。/n",temp[i].name,temp[i].grade[4]);          }   } }  void mynewcreat() {  int i=0,k=0,s[5]={0},z[5]={0},v=0,n=0,m=0,j=0,p=0,c=0,ww;  struct student temp[N]={0};  FILE*fp=NULL;  FILE*fq=NULL;  fp=fopen("d://yuan.dat","r");  if(fp==NULL)  {   printf("打開文件失?。?n");   return;  }  while(feof(fp)==0)  {   ww=fscanf(fp,"%23s%15s",temp[n].num,temp[n].name);   if(ww==-1) break;   for(j=0;j<5;j++)   {    fscanf(fp,"%d",&temp[n].grade[j]);       }   n++;  }   while(i<=n)   {    for(k=0;k<5;k++)    {     if (temp[i].grade[k]<60)     s[i]=s[i]+1;    }        for(v=0;v<5;v++)    {     if(temp[i].grade[v]==0)      z[i]++;    }    if(z[i]==5)    {     break;    }    if(s[i]<=3)    {     i++;    }    if(s[i]>3)    {     for(c=i;c<=n;c++)     {      temp[c]=temp[c+1];     }     s[i]=0;    }   }      printf("/n");   printf("刪除已退學的學生后,學生名冊為:");   printf("/n");   for(p=0;p<n-1;p++)   {    printf("/n");    printf("%10s號 %10s分 ",temp[p].num,temp[p].name);    for(m=0;m<5;m++)     {      printf("%d ",temp[p].grade[m]);     }    printf("/n");   }  fq=fopen("d://next.dat","w");  if(fq==NULL)  {   printf("打開文件失??!/n");   exit(0);  }  for(i=0;i<n;i++)  {   fprintf(fq,"%23s%15s",temp[i].num,temp[i].name);   for(j=0;j<5;j++)   {    fprintf(fq,"%2d",temp[i].grade[j]);   }   fprintf(fq,"/n");  } fclose(fq);  printf("計算已完成 保存在d:/next.dat文件當中,請查驗"); } main() {  myprint1();   } 

有時間整理整理學過的,溫故知新。

以上就是本文的全部內容,希望對大家的學習有所幫助,也希望大家多多支持VEVB武林網。


發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
亚洲香蕉成人av网站在线观看_欧美精品成人91久久久久久久_久久久久久久久久久亚洲_热久久视久久精品18亚洲精品_国产精自产拍久久久久久_亚洲色图国产精品_91精品国产网站_中文字幕欧美日韩精品_国产精品久久久久久亚洲调教_国产精品久久一区_性夜试看影院91社区_97在线观看视频国产_68精品久久久久久欧美_欧美精品在线观看_国产精品一区二区久久精品_欧美老女人bb
一本色道久久88亚洲综合88| 国产美女扒开尿口久久久| 狠狠色狠狠色综合日日小说| 久久久国产一区二区| 国产69精品久久久久9999| 最近2019中文免费高清视频观看www99| 国产精品三级久久久久久电影| 欧美与欧洲交xxxx免费观看| 黑人巨大精品欧美一区二区| 国产91精品久久久久久久| 日本伊人精品一区二区三区介绍| 久久黄色av网站| 精品久久久国产| 精品日韩美女的视频高清| 亚洲精品日韩欧美| 日产日韩在线亚洲欧美| 日本老师69xxx| 亚洲第一精品福利| 亚洲国产精品热久久| 久久久人成影片一区二区三区观看| 97婷婷大伊香蕉精品视频| 91中文在线视频| 波霸ol色综合久久| 成人精品久久一区二区三区| 九九九久久国产免费| 久久久久亚洲精品| 亚洲美腿欧美激情另类| 日韩亚洲欧美中文在线| 国产男女猛烈无遮挡91| 欧美电影在线播放| 精品久久国产精品| 日韩视频在线免费观看| 色综合天天狠天天透天天伊人| 亚洲欧美另类在线观看| 日韩欧美大尺度| 红桃av永久久久| 亚洲加勒比久久88色综合| 欧美福利在线观看| 亚洲国产日韩一区| 欧美肥老太性生活视频| 亚洲自拍av在线| 国产精品三级美女白浆呻吟| 国产精品一二三在线| 亚洲国产日韩欧美在线图片| 日韩综合中文字幕| 欧美一区三区三区高中清蜜桃| 日韩av一区二区在线观看| 色播久久人人爽人人爽人人片视av| 精品久久久视频| 亚洲精品动漫久久久久| 日韩av电影手机在线观看| 亚洲国产高清高潮精品美女| 欧美激情久久久久| 精品日韩美女的视频高清| 国产精品久久久一区| 欧美精品电影免费在线观看| 欧美成人在线网站| 午夜精品三级视频福利| 日韩高清免费观看| 亚洲一品av免费观看| 国产亚洲视频中文字幕视频| 国内伊人久久久久久网站视频| 亚洲精品欧美日韩专区| 亚洲福利视频在线| 欧美日韩国产综合视频在线观看中文| 久久综合九色九九| 91免费精品国偷自产在线| 精品中文视频在线| 亚洲女人天堂av| 98视频在线噜噜噜国产| 国产精品日韩久久久久| 性欧美激情精品| 日韩欧美国产黄色| 91麻豆国产语对白在线观看| 大荫蒂欧美视频另类xxxx| 精品成人69xx.xyz| 久久久久女教师免费一区| 国产精品高清在线观看| 欧美国产日韩一区二区在线观看| 国产91色在线|| 日韩成人免费视频| 久久影视电视剧免费网站| 欧美日韩免费网站| 亚洲香蕉在线观看| 91av在线播放视频| 亚洲色图狂野欧美| 亚洲欧美日韩一区二区三区在线| 91精品在线国产| 69av在线视频| 亚洲视频欧美视频| 国产精品一区=区| 国产精品专区一| 亚洲一区二区久久| 精品久久久久久久久久ntr影视| 精品久久香蕉国产线看观看亚洲| 成人黄色片在线| 国产女精品视频网站免费| 亚洲欧美变态国产另类| 亚洲欧美变态国产另类| 美女啪啪无遮挡免费久久网站| 欧美激情视频给我| 欧美在线视频免费| 成人综合网网址| 欧美日韩国产专区| 一区二区三区高清国产| 国产中文字幕亚洲| 国产精品综合久久久| 亚洲字幕在线观看| 欧美性色19p| 国产精品久久久久久久久久免费| 亚洲xxxx3d| 国产精品吹潮在线观看| 日韩最新中文字幕电影免费看| 亚洲人成人99网站| 欧美激情视频三区| 国产精品福利在线观看网址| 精品国产一区二区三区四区在线观看| 亚洲黄色片网站| 精品亚洲一区二区三区四区五区| 国产欧美日韩中文字幕在线| 国产成人拍精品视频午夜网站| 在线观看成人黄色| 美女少妇精品视频| 国产91亚洲精品| 欧美高清在线观看| 国产一区二区三区三区在线观看| 日本最新高清不卡中文字幕| 这里只有视频精品| 国产999在线观看| 亚洲精品99久久久久中文字幕| 亚洲最新在线视频| 欧美日韩成人黄色| 亚洲欧洲在线播放| 成人国产精品免费视频| 国产亚洲欧美一区| 国产精品爱久久久久久久| 欧美在线视频观看免费网站| 亚洲一级片在线看| 国产精品久久二区| 岛国av一区二区在线在线观看| 国产日韩欧美夫妻视频在线观看| 欧美精品日韩三级| 亚洲精品久久久久久久久久久久| 亚洲欧美综合精品久久成人| 亚洲va欧美va国产综合剧情| 精品女同一区二区三区在线播放| 欧美日韩国产区| 国产精品96久久久久久| 一区二区三区美女xx视频| 精品久久久久久久大神国产| xvideos亚洲人网站| 久久久国产一区| 性金发美女69hd大尺寸| 欧美极品欧美精品欧美视频| 国产精品免费电影| 欧美极品少妇与黑人| 久久精品视频免费播放| 欧美高清不卡在线| 国产一区二区三区直播精品电影| 欧美激情一二区| 中文字幕国产日韩| 亚洲成人激情在线| 亚洲国产黄色片| 欧美韩日一区二区|