用C语言编写5个学生,每个学生有3门课程成绩,从键盘输入学生数据(学号,姓名,3门成绩)计算平均成绩,将成绩放入磁盘文件stud中

#include
#include
#define SIZE 2
struct Student
 { int num;
   char name[10];
   float score[3];
   float ave;
 
 }stu[SIZE];

//写入到磁盘文件
 void save(struct Student stud[],int n)
 {
     FILE *fp;
     int i;
     if((fp=fopen("stu.txt","wb"))==NULL)
     {
         printf("不能打开");
         exit(0);

     }

     for(i=0;i      {
         if(fwrite(&stud[i],sizeof(struct Student),1,fp)!=1)
         {
             printf("NO !");
         }

     }
     fclose(fp);
    
  }
 
//输入学生数据
 void input(struct Student stu[])
 { 
     int i;
     printf("please input data of student:\n" );
     for(i=0;i      {
         scanf("%d %s %f %f %f",&stu[i].num,stu[i].name,&stu[i].score[0],&stu[i].score[1],&stu[i].score[2]);
         stu[i].ave=(stu[i].score[0]+stu[i].score[1]+stu[i].score[2])/3;
     }

     
}

 //读入数据显示到屏幕
void print(struct Student stud[],int n)
{
    FILE *out;
    int i;
     if((out=fopen("stu.txt","rb"))==NULL)
     {
         printf("不能打开");
         exit(0);

     }
     for(i=0;i      {
         fread(&stud[i],sizeof(struct Student),1,out);
         printf("%d %s %.2f %.2f %.2f %.2f\n",stud[i].num,stud[i].name,stud[i].score[0],stud[i].score[1],stud[i].score[2],stud[i].ave);
     }

}


int main()
 { 
    void input(struct Student stu[]);
    int i;
    struct Student stu[SIZE], *p=stu;
    input(p);
    save(p,SIZE);
    print(p,SIZE);
    return 0;
 
 }

你可能感兴趣的:(c语言)