{
char name[20]; /*姓名*/
int age; /*年龄*/
long stu_ID; /*学号*/
};
void main()
{
struct student *p1,*p2;
scanf("%s%d%ld",&p1.name,&p1.age,&p1.stu_ID);
}
这个意思吧 我觉得差不多
狂风扫落叶,扫把都失业!拍卖QQ:559372
定义一个结构体类型,包括3个成员
姓名 20;年龄 int; 学号 12。注意此人不断修改题目
定义两个结构体变量,定义两个结构体指针变量,编写从键盘输入2个人的信息,把第一个人的信息传送到第一个结构体变量,把第二个人的信息传送到第二个结构体变量。
把第一个和第二个传送到结构体指针变量中去,用fread函数将第一个人的信息和第二个信息保存到文件中去,保存名要从键盘输入。注意题目有误,应为fwrite函数
#include "stdio.h"
#include "stdlib.h"
struct student
{
char name[20];
short int age;
char stu_ID[12];
};
void input(struct student *);
void main()
{
struct student a,b,*pa=&a,*pb=&b;
FILE *fp=fopen("c:\\student2.dat","wb");
if(fp==NULL)
{
fprintf(stderr,"data file(s) cannot be created...\n");
abort();
}
input(pa);input(pb);
fwrite(pa,sizeof(a),1,fp);
fwrite(pb,sizeof(b),1,fp);
fclose(fp);
}
void input(struct student *p)
{
static int i;
printf("\n请输入第%d人的情况\n",++i);
printf("姓名=");scanf("%s",p->name);
printf("年龄=");scanf("%d",&p->age);
printf("学号=");scanf("%s",p->stu_ID);
}