C++,编程求大神帮忙!将从键盘输入的10位同学的学号和成绩存入到文件student.dat中

编写程序,将从键盘输入的10位同学的学号和成绩存入到文件student.dat中,再从文件中读取学生的信息,求出最高分,最低分和总分,并将最高分,最低分的学生姓名和成绩存入到文件cj.dat中。
这是我写的,接下来不知道怎么下手,求大神帮忙!
写了一下不知道怎么写了,上次有一个大神写的看不懂啊,求简单!谢谢!
#include"iostream.h"
#include"stdio.h"
#include"string.h"
#include"stdlib.h"
#define N 10
struct student
{
char name[8];
char num[8];
double score;
};
void main()
{
struct student s[N],t[N];
int i;
FILE *fp1,*fp2;
if((fp1=fopen("student.dat","wb"))==NULL)
{
cout<<"can't open student.dat";
exit(1);
}
for(i=0;i<N;i++)
{
cin>>s[i].name>>s[i].num>>s[i].score;
fwrite(&s[i],sizeof(student),1,fp1);
}
fclose(fp1);
if((fp2=fopen("cj.dat","wb"))==NULL)
{
cout<<"can't open student.dat"; exit(1);
}
if((fp1=fopen("student.dat","rb"))==NULL)
{
cout<<"can't open student.dat";
exit(1);
}
fread(t,sizeof(t),1,fp1);
for(i=0;i<N;i++)
cout<<t[i].name<<' '<<t[i].num<<' '<<t[i].score<<endl;
fclose(fp);
}

#include<iostream>
#include"stdio.h"
#include"string.h"
#include"stdlib.h"
using namespace std;
#define N 10 
struct student

 char name[8];
 char num[8];
 double score;
};

struct grade{
char name[8];
double score;
};

int main()
{
struct student s[N],t[N];
  int i, max = 0, min = 0;
struct grade r_grade;
double sum;
FILE *fp1,*fp2;
if((fp1=fopen("student.dat","wb"))==NULL) {
cout<<"can't open student.dat";
  exit(1);
  }
  for(i=0;i<N;i++){
 cin>>s[i].name>>s[i].num>>s[i].score;
   fwrite(&s[i],sizeof(student),1,fp1);
    }
  fclose(fp1);  
  if((fp1=fopen("student.dat","rb"))==NULL)   {
  cout<<"can't open student.dat"; 
   exit(1); 
    }
  fread(t,sizeof(t),1,fp1); 
  for(i=0;i<N;i++){   
sum += t[i].score;
   cout<<t[i].name<<' '<<t[i].num<<' '<<t[i].score<<endl;
if(!i)
continue;
if(t[min].score > t[i].score)
min = i;
if(t[max].score < t[i].score)
max = i;
}
fclose(fp1);

  if((fp1=fopen("cj.dat","wb"))==NULL)   {
  cout<<"can't open student.dat"; 
   exit(1); 
    }
strcpy(r_grade.name, t[min].name);
r_grade.score = t[min].score;
fwrite(&r_grade,sizeof(r_grade),1,fp1);
strcpy(r_grade.name, t[max].name);
r_grade.score = t[max].score;
fwrite(&r_grade,sizeof(r_grade),1,fp1);
cout<<"sum ="<<sum;
fclose(fp1);

return 0;
}

忘了读写了 就看了下你的代码的读写 都 是泪 

这是很基础的东西 少年少谈恋爱吧

温馨提示:答案为网友推荐,仅供参考

相关了解……

你可能感兴趣的内容

本站内容来自于网友发表,不代表本站立场,仅表示其个人看法,不对其真实性、正确性、有效性作任何的担保
相关事宜请发邮件给我们
© 非常风气网