C语言关于scanf 输入时遇到这个问题

typedef struct product

{

int num;                            //编号

char type[20]; //类型

char name[20]; //名称

int price; //价格

long in_time; //入库时间

char inper_name[20]; //经手人

char yes_no; //是否在库

long out_time; //外借时间

char outper_name[20]; //外借人姓名

long re_time; //归还时间  

struct product *next;


}Node;

void creat_link()

{

int i,x,n;

printf("添加多少个数据");

scanf("%d",&n);


Node *p;

if((fp=fopen("t.txt","a"))==NULL)

{

printf("error");

exit(1);

}


for(i=0;i<n;i++)

{

p=(Node*)malloc(sizeof(Node));

if(p==NULL)

{

printf("no enough memory");

exit(1);

}

printf("编号");

scanf("%d",&x);

p->num=x;

printf("类型");

scanf("%s",p->type);

printf("名称");

scanf("%s",p->name);

printf("价格");

scanf("%s",&(p->price));

printf("入库时间");

scanf("%d",&(p->in_time));

printf("经手人");

scanf("%s",p->inper_name);

printf("是否在库");

scanf("%c",&(p->yes_no));



if(p->yes_no==n){

printf("外借时间");

scanf("%d",&(p->out_time));

printf("外借人");

scanf("%s",p->outper_name);

printf("归还时间");

scanf("%d",&(p->re_time));

}else{

p->out_time=p->in_time;

p->re_time=p->in_time;

strcpy(p->outper_name,p->inper_name);

}

free(p);

p=NULL;

}

system("PAUSE");

system("cls");


}


3f2b8bd4b31c8701bea25a99207f9e2f0708ff15也就是最后那个是否在库我无法输入


Camel97
浏览 1915回答 2
2回答

补食者

你好像头文件少了吧,主函数也没有???
打开App,查看更多内容
随时随地看视频慕课网APP