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

首頁 > 編程 > C > 正文

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

2020-01-26 13:44:43
字體:
來源:轉載
供稿:網友

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();  } 

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

更多學習資料請關注專題《管理系統開發》。

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

發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表

圖片精選

亚洲香蕉成人av网站在线观看_欧美精品成人91久久久久久久_久久久久久久久久久亚洲_热久久视久久精品18亚洲精品_国产精自产拍久久久久久_亚洲色图国产精品_91精品国产网站_中文字幕欧美日韩精品_国产精品久久久久久亚洲调教_国产精品久久一区_性夜试看影院91社区_97在线观看视频国产_68精品久久久久久欧美_欧美精品在线观看_国产精品一区二区久久精品_欧美老女人bb
国产精品第一区| 亚洲自拍偷拍一区| 日韩在线观看电影| 伊人久久久久久久久久久| 久久亚洲精品国产亚洲老地址| 国产精品ⅴa在线观看h| 国产成人综合精品| 久久影院资源站| 日韩欧美在线网址| 中文字幕日韩av| 欧美成人精品一区二区三区| 国产一区二区三区视频免费| 亚洲人成绝费网站色www| 亚洲激情视频网| 色婷婷av一区二区三区久久| 欧美成人久久久| 日本19禁啪啪免费观看www| 亚洲一区二区三区四区视频| 亚洲一区美女视频在线观看免费| 久久精品中文字幕| 欧美日韩亚洲天堂| 国产脚交av在线一区二区| 久久久久久久久久久国产| 亚洲www在线观看| 成人免费在线视频网址| 久久天堂av综合合色| 国产97人人超碰caoprom| 亚洲加勒比久久88色综合| 日韩精品黄色网| 亚洲国产一区自拍| 欧美激情一区二区三区高清视频| 国产狼人综合免费视频| 日韩成人av网址| 最近2019年中文视频免费在线观看| 亚洲有声小说3d| 成人h猎奇视频网站| 欧美国产日韩一区二区三区| 亚洲成人黄色在线| 96精品久久久久中文字幕| 欧美成人免费观看| 国产日韩av高清| 992tv成人免费视频| 成人免费高清完整版在线观看| 91久久夜色精品国产网站| 国产成人精品久久| 日韩精品视频免费在线观看| 欧美电影免费观看大全| 欧美极品少妇xxxxx| 欧美成人剧情片在线观看| 欧美一级片免费在线| 国产精品视频久久| 欧美精品在线网站| 中文字幕久久精品| 97久久精品国产| 色999日韩欧美国产| 美女国内精品自产拍在线播放| 亚洲人成伊人成综合网久久久| 亚洲第一页中文字幕| 国产91亚洲精品| 国产精品av免费在线观看| 国产精品吹潮在线观看| 最新中文字幕亚洲| 欧美日韩国产成人高清视频| 久久激情视频久久| 日韩av电影免费观看高清| 亚洲欧美日韩直播| 久久久久久12| 国产丝袜一区二区三区免费视频| 亚洲色图校园春色| 久久久欧美精品| 久久伊人精品一区二区三区| 亚洲男人天堂古典| 成人黄色av免费在线观看| 亚洲国产成人一区| 66m—66摸成人免费视频| 超薄丝袜一区二区| 欧美亚洲国产日韩2020| 成人www视频在线观看| 日韩有码在线电影| 亚洲精品91美女久久久久久久| 岛国av一区二区| 精品欧美一区二区三区| 欧美电影在线观看| 最新国产精品拍自在线播放| 色综合视频一区中文字幕| 欧美日韩国产麻豆| 中文字幕在线精品| 日韩在线视频国产| 亚洲国产精品999| 亚洲高清久久久久久| 日韩av在线免播放器| 国产精品美女在线| 亚洲在线免费观看| 久久久精品免费| 欧美孕妇毛茸茸xxxx| 亚洲а∨天堂久久精品喷水| 亚洲自拍小视频| 欧美第一黄网免费网站| 久久久这里只有精品视频| 26uuu日韩精品一区二区| 国产一区二区三区直播精品电影| 日本成人精品在线| 国产91精品在线播放| 国产精品网红福利| 国产欧美精品一区二区三区-老狼| 国产精品福利在线| 国产91网红主播在线观看| 亚洲精品成人久久电影| 狠狠综合久久av一区二区小说| 九九九热精品免费视频观看网站| 国产精品久久久久9999| 美女扒开尿口让男人操亚洲视频网站| 亚洲欧美日韩在线高清直播| 俺去亚洲欧洲欧美日韩| 日韩中文有码在线视频| 国产va免费精品高清在线| 日韩av在线导航| 亚洲影院污污.| 久久精品男人天堂| 色伦专区97中文字幕| 久久国内精品一国内精品| 最好看的2019年中文视频| 日韩一区二区三区xxxx| 精品女同一区二区三区在线播放| 45www国产精品网站| 日本欧美中文字幕| 久热99视频在线观看| 精品久久久在线观看| 久久五月情影视| 久久艳片www.17c.com| 日日摸夜夜添一区| 欧美极品美女视频网站在线观看免费| 中文字幕精品—区二区| 久久精视频免费在线久久完整在线看| 国产精品久久久久福利| 97超级碰在线看视频免费在线看| 国产成人午夜视频网址| 日韩在线免费高清视频| 伊人伊人伊人久久| 精品国产一区二区三区久久久| 亚洲性生活视频在线观看| 欧美亚洲成人精品| 亚洲欧美三级在线| 久久精品成人动漫| 久久视频免费观看| 三级精品视频久久久久| 国产精品99久久久久久久久| 欧美成人剧情片在线观看| 欧美另类极品videosbestfree| 亚洲成人激情图| 亚洲国产精品久久久久秋霞不卡| 欧美精品免费播放| 亚洲跨种族黑人xxx| 国产精品亚洲片夜色在线| 日本不卡免费高清视频| 精品久久久久久| 中文日韩在线视频| 97在线免费视频| 日韩在线视频一区| 亚洲精品福利在线观看| 国产欧美最新羞羞视频在线观看| 精品成人乱色一区二区| 亚洲深夜福利在线| 国产999精品久久久影片官网|