⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 ch19-16.c

📁 C语言程序设计上机指导与练习 冶金工业出版社 刘怀亮
💻 C
字号:
#define SNUM 5 /*student number*/ 
#define CNUM 3 /*course number*/ 
#include<stdio.h> 
#include<conio.h> 
/*disp student info*/ 
void DispScore(char num[][6],char name[][20],float score[][CNUM]) 
{ 
   int i,j; 
   printf("\n\nStudent Info and Score:\n"); 
   for(i=0;i<SNUM;i++) 
   { 
      printf("%s ",num[i]); 
      printf("%s ",name[i]); 
      for(j=0;j<CNUM;j++) 
         printf("%8.2f",score[i][j]); 
      printf("\n\n"); 
   } 
} 

/*calculate all student average score*/ 
void CalAver(float score[][CNUM]) 
{ 
   float sum,aver; 
   int i,j; 
   for(i=0;i<CNUM;i++) 
   { 
      sum=0; 
      for(j=0;j<SNUM;j++) 
         sum=sum+score[j][i]; 
      aver=sum/SNUM; 
      printf("Average score of course %d is %8.2f\n",i+1,aver);
   } 
} 

/*Find student: two courses no pass*/ 
void FindNoPass(char num[][6],float score[][CNUM]) 
{ 
   int i,j,n; 
   printf("\nTwo Course No Pass Students:\n"); 
   for(i=0;i<SNUM;i++) 
   { 
      n=0; 
      for(j=0;j<CNUM;j++) 
         if(score[i][j]<60) 
            n++; 
      if(n>=2) 
      { 
         printf("%s ",num[i]); 
         for(j=0;j<CNUM;j++) 
            if(score[i][j]<60) 
               printf("%8.2f",score[i][j]); 
         printf("\n"); 
      } 
   } 
} 

/*Find student: three courses 85-90*/ 
void FindGoodStud(char num[][6],char name[][20],float score[][CNUM]) 
{ 
   int i,j,n; 
   printf("\nScore of three courses between 85 and 90:\n"); 
   for(i=0;i<SNUM;i++) 
   { 
      n=0; 
      for(j=0;j<CNUM;j++) 
         if(score[i][j]>=85&&score[i][j]<=90) 
            n++; 
      if(n==3) 
         printf("%s %s\n",num[i],name[i]); 
   } 
} 

/*input student info*/ 
void main() 
{ 
   char num[SNUM][6],name[SNUM][20]; 
   /*array num refers to student number, and its length is 6 */
   float score[SNUM][CNUM];  
   int i,j; 
   clrscr(); 
   printf("\nPlease input student num and score:\n"); 
   for(i=0;i<SNUM;i++) 
   { 
      printf("\n\nStudent%d number: ",i+1); 
      scanf("%s",num[i]); 
      printf("\nStudent%d name: ",i+1); 
      scanf("%s",name[i]); 
      printf("\nStudent%d three scores: ",i+1); 
      for(j=0;j<CNUM;j++) 
         scanf("%f",&score[i][j]); 
   } 
   DispScore(num,name,score); 
   CalAver(score); 
   FindNoPass(num,score); 
   FindGoodStud(num,name,score); 
   getch(); 
} 

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -