主题:这是我的电脑的问题还是我的程序出问题了....???
#include"stdio.h"
struct exam
{float daolun;
float cyuyan;
float math;
float english;
float sport;
};
struct student
{char mun;
char name[10];
char sex;
int age;
struct exam mark;
}stud1[2],stud2[2];
void inputdata()
{
struct exam
{float daolun;
float cyuyan;
float math;
float english;
float sport;
};
struct student
{char mun;
char name[10];
char sex;
int age;
struct exam mark;
}stud1[2];
int i;
printf("input the stud1 data.\nmun name sex age daolun cyuyan math english sport\n");
for(i=0;i<=2;i++)
scanf("%c%s%s%d%f%f%f%f%f",&stud1[i].mun,stud1[i].name,stud1[i].sex,&stud1[i].mark.daolun,&stud1[i].mark.cyuyan,
&stud1[i].mark.math,&stud1[i].mark.english,&stud1[i].mark.sport);
}
void outputdata()
{int i;
for(i=0;i<2;i++)
printf("%d,%s,%s,%d,%d,%d,%d,%d,%d\n",stud1[i].mun,stud1[i].name,stud1[i].sex,stud1[i].mark.daolun,stud1[i].mark.cyuyan,
stud1[i].mark.math,stud1[i].mark.english,stud1[i].mark.sport);
}
void datawrite()
{ FILE*fp;
int i;
if((fp=fopen("stud.dat","wb"))==NULL)
{ printf("cannot open file\n");
return;
}
for(i=0;i<=2;i++)
if(fwrite(&stud1[i],sizeof(struct student),1,fp))
printf("file write error\n");
fclose(fp);
}
void dataread()
{FILE *fp;
int i;
if((fp=fopen("stud.dat","r"))==NULL)
{printf("can not open file\n");
return;
}
for(i=0;i<=2;i++)
fread(&stud2[i],sizeof(struct student),1,fp);
}
void main()
{ char ch ;
printf("****************menu****************\n");
printf(" 1.input data.\n");
printf(" 2.write data to file.\n");
printf(" 3.read data from file.\n");
printf(" 4.output data.\n");
printf(" 5.exist.\n");
printf("************************************\n");
printf("input your choice number,please!\n");
ch=getchar();
switch(ch)
{case '1': inputdata();break;
case '2': datawrite();break;
case '3': dataread();break;
case '4': outputdata();break;
case '5': break;
default: printf("error.\n");
}
}
struct exam
{float daolun;
float cyuyan;
float math;
float english;
float sport;
};
struct student
{char mun;
char name[10];
char sex;
int age;
struct exam mark;
}stud1[2],stud2[2];
void inputdata()
{
struct exam
{float daolun;
float cyuyan;
float math;
float english;
float sport;
};
struct student
{char mun;
char name[10];
char sex;
int age;
struct exam mark;
}stud1[2];
int i;
printf("input the stud1 data.\nmun name sex age daolun cyuyan math english sport\n");
for(i=0;i<=2;i++)
scanf("%c%s%s%d%f%f%f%f%f",&stud1[i].mun,stud1[i].name,stud1[i].sex,&stud1[i].mark.daolun,&stud1[i].mark.cyuyan,
&stud1[i].mark.math,&stud1[i].mark.english,&stud1[i].mark.sport);
}
void outputdata()
{int i;
for(i=0;i<2;i++)
printf("%d,%s,%s,%d,%d,%d,%d,%d,%d\n",stud1[i].mun,stud1[i].name,stud1[i].sex,stud1[i].mark.daolun,stud1[i].mark.cyuyan,
stud1[i].mark.math,stud1[i].mark.english,stud1[i].mark.sport);
}
void datawrite()
{ FILE*fp;
int i;
if((fp=fopen("stud.dat","wb"))==NULL)
{ printf("cannot open file\n");
return;
}
for(i=0;i<=2;i++)
if(fwrite(&stud1[i],sizeof(struct student),1,fp))
printf("file write error\n");
fclose(fp);
}
void dataread()
{FILE *fp;
int i;
if((fp=fopen("stud.dat","r"))==NULL)
{printf("can not open file\n");
return;
}
for(i=0;i<=2;i++)
fread(&stud2[i],sizeof(struct student),1,fp);
}
void main()
{ char ch ;
printf("****************menu****************\n");
printf(" 1.input data.\n");
printf(" 2.write data to file.\n");
printf(" 3.read data from file.\n");
printf(" 4.output data.\n");
printf(" 5.exist.\n");
printf("************************************\n");
printf("input your choice number,please!\n");
ch=getchar();
switch(ch)
{case '1': inputdata();break;
case '2': datawrite();break;
case '3': dataread();break;
case '4': outputdata();break;
case '5': break;
default: printf("error.\n");
}
}