新学者求大神教导
#include<stdio.h>#include<stdlib.h>
#include<string.h>
struct student
{
char sum[30];
char name[30];
char sex[10];
char birth[20];
char math;
struct student *next;
};
typedef struct student stu;
void meum(void)
{
printf("1输入学生信息\n");
printf("2查询学生信息\n");
printf("3排序\n");
printf("4修改信息\n");
printf("5退出\n");
}
void cz1()
{
stu *p1,*p2;
p1=(struct student*)malloc(sizeof(struct student));
if(p1!=NULL)
{
printf("请输入学号:\n");
scanf("%s",p1->sum);
printf("请输入姓名:\n");
scanf("%s",p1->name);
printf("请输入性别:\n");
scanf("%s",p1->sex);
printf("请输入出生日:\n");
scanf("%s",p1->birth);
printf("请输入数学成绩:\n");
scanf("%d",p1->math);
printf("%-20s%-10s%-10s%-20s\n",p1->sum,p1->name,p1->sex,p1->birth,p1->math);
}
}
int main(void)
{
meum();
cz1();
return 0;
}
这个程序为什么到 scanf("%d",p1->math);的时候会自动结束程序啊?