#include "head.h"
/*新建鏈表*/
struct STD *create()
{
if(head==NULL)
{
struct STD *p;
head=NULL;
p=(struct STD *)malloc(sizeof(struct STD));
printf("Number\tName\tChinese\tMath\tEnglish\n");
scanf("%d %s %lf %lf %lf",&p->num,p->name,&p->score[0],&p->score[1],&p->score[2]);
while(p->num!=0)
{
head=insertdoc(head,p);
p=(struct STD *)malloc(sizeof(struct STD));/*為什么少了這句就很奇怪*/
scanf("%d %s %lf %lf %lf",&p->num,p->name,&p->score[0],&p->score[1],&p->score[2]);
}
free(p);
printf("新建成功......\n");
}
else
printf("已存在,無需再次新建\n");
return head;
}
uj5u.com熱心網友回復:
出什么錯誤?創建鏈表,先申請節點,后插入鏈表中。
uj5u.com熱心網友回復:
假設你的水壺只能倒5杯水,你現在倒完了,你不加點水,怎么繼續倒啊uj5u.com熱心網友回復:
這相當于你要創建一個新的鏈表出來,你不得給他分配下記憶體呀
uj5u.com熱心網友回復:
為什么要重復申請啊,每次輸入都要申請一次,我又沒釋放這個p
轉載請註明出處,本文鏈接:https://www.uj5u.com/houduan/240244.html
標籤:C語言
