首页 > 电脑

c语言结构体求平均值

更新时间2019-01-03 04:45:50

已有学生成绩,求用c语言编写一个结构体程序,在不同操作下能输出每个人的平均成绩或者每一科的平均成绩。急求,感谢!!!

给你个参考

#include <stdio.h>
#include <string.h>
#define N 3  //学生数
#define M 5 //课程数
typedef struct student
{
   char name[11];
   char no[5];
   int sex;
   double score[M]; //
} STUDENT;
STUDENT stu[N];
void input() //输入
{
   int i,j;
   for(i=0; i<N; i++)
       {
           printf("请输入%d位学生的学号:",i+1);
           scanf("%s",stu[i].no);
           printf("请输入%d位学生的姓名:",i+1);
           scanf("%s",stu[i].name);
           printf("请输入%d位学生的姓别(0--女,1--男):",i+1);
           scanf("%s",&stu[i].sex);
           for(j=0; j<M; j++)
               {
                   printf("请输入%d位学生的课程%d的成绩:",i+1,j+1);
                   scanf("%lf",&stu[i].score[j]);
               }
       }
}
void  output_avr() //输出每个人的平均成绩
{
   int i,j;
   double sum;
   for(i=0; i<N; i++)
       {
           sum=0;
           for(j=0; j<M; j++)
               sum+=stu[i].score[j];
           printf("%s 的平均成绩为 %.2lf ",stu[i].name,sum/M);
       }
}
void  output_avr1() //输出每门课的平均成绩
{
   int i,j;
   double sum;
   for(j=0; j<M; j++)
       {
           sum=0;
           for(i=0; i<N; i++)
               sum+=stu[i].score[j];
           printf("课程%d 的平均成绩为 %.2lf ",j+1,sum/M);
       }
}
int main()
{
   input();
   output_avr();
   output_avr1();
   return 0;
}

相关标签:c语言

上一篇:昨天发恭喜恭喜歌给网友,他们说很旧的歌。我落后?找不到新的,乱发

下一篇:想自己改装一下、能运行GTA5就行、大佬帮忙看看