
链表尾插法为什么要定义一个结构体变量
1个回答
展开全部
1.用头插法。因为数据追加和删除比较多,追加的话,头插法可以直接插,用尾插降低了时间效率,删除用两个一样。
2./*结构体定义*/
struct
client{
char
account[14];
char
name[10];
char
identity[20];
char
address[15];
long
int
money;
};
/*链表结点定义*/
struct
node{
struct
client
band_inf;
struct
node
*next;
};
应该把结构体结点定义成链表的成员,这样链表才对。如果像你那样定义的话,完全不用定义结构体,链表就搞定了。因为你在链表里面把结构的成员都又定义了。
3.
1),定义结点:p1=(struct
node*)malloc(sizeof(struct
node))
;表示定义一个node型的结点指针
使用,这个要看具体怎么用了。比如说删除searchp,priorp是searchp的前面一个结点,这样写
priorp->next=searchp->next;
delete
searchp;
即可
插入newnode在searchp的后面,可以这样:
newnode->next=searchp->next;
searchp->next=newnode;
2)广义的二进制就是文件,你存成什么文件都行。.txt就行。
3)有保存的。if(fwrite(&stud[i],sizeof(struct
student_type),1,fp)!=1)。里面有个fwrite就是写入文件,在判断的过程中,能写入文件的就已经写入了。
望采纳。
2./*结构体定义*/
struct
client{
char
account[14];
char
name[10];
char
identity[20];
char
address[15];
long
int
money;
};
/*链表结点定义*/
struct
node{
struct
client
band_inf;
struct
node
*next;
};
应该把结构体结点定义成链表的成员,这样链表才对。如果像你那样定义的话,完全不用定义结构体,链表就搞定了。因为你在链表里面把结构的成员都又定义了。
3.
1),定义结点:p1=(struct
node*)malloc(sizeof(struct
node))
;表示定义一个node型的结点指针
使用,这个要看具体怎么用了。比如说删除searchp,priorp是searchp的前面一个结点,这样写
priorp->next=searchp->next;
delete
searchp;
即可
插入newnode在searchp的后面,可以这样:
newnode->next=searchp->next;
searchp->next=newnode;
2)广义的二进制就是文件,你存成什么文件都行。.txt就行。
3)有保存的。if(fwrite(&stud[i],sizeof(struct
student_type),1,fp)!=1)。里面有个fwrite就是写入文件,在判断的过程中,能写入文件的就已经写入了。
望采纳。
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询