一个c语言问题,解决

从键盘录入10个学生的学号、姓名、数学成绩,将其中60分以上(含60分)的同学信息全部写入

D:\my_ data.txt文件中;再从文件中读出成绩,显示到屏幕上。用c语言解决

用scanf从键盘接收数据,然后用if判断分数并写入文件,如有代码需要可以私信

typedef struct _STUDENT
{
  char id[20];
  char name[20];
  float score;
}STUDENT;
STUDENT stu[10];
int n = 0;
void saveData()
{
  FILE *fp = fopen("D:\\my_data.txt","w");
  if(fp == NULL)
    return;
  for(int i=0;i<n;i++)
  {
     if(stu[i].score >= 60)
        fprintf(fp,"%s\t%s\t%f\n",stu[i].id,stu[i].name,stu[i].score);
  }
  fclose(fp);
}

void readData()
{
  FILE *fp = fopen("D:\\my_data.txt","r");
  if(fp == NULL)
    return;
  char buf[100];
  n = 0;
  while(fgets(buf,100,fp) != NULL)
  {
    sscanf(buf,"%s\t%s\t%f",stu[n].id,stu[n].name,&stu[n].score);
    n++;
  }
  fclose(fp);  
}

void input()
{
  printf("请输入10个学生信息:");
  n = 10;
  for(int i=0;i<n;i++)
  {
    printf("请输入第%d个学生信息:",i+1);
    scanf("%s %s %f",stu[i].id,stu[i].name,&stu[i].score);
  }
}

void output()
{
  printf("%10s%20s%10s\n","学号","姓名","数学成绩");
  for(int i=0;i<n;i++)
    printf("%10s%20s%10f\n",stu[i].id,stu[i].name,stu[i].score);
}

int main()
{
  input();
  saveData();
  readData();
  output();
  return 0;
}