| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 523 人关注过本帖
标题:请问诸位 我的这个双向链表错在哪了
只看楼主 加入收藏
gestopaxmc
Rank: 1
等 级:新手上路
帖 子:69
专家分:0
注 册:2007-1-2
收藏
 问题点数:0 回复次数:4 
请问诸位 我的这个双向链表错在哪了
请问诸位 我的这个双向链表错在哪了?谢谢!
#include<stdio.h>
#include<malloc.h>
#include<string.h>
typedef struct stu
{
int num;
char name[5];
struct stu *front;
struct stu *next;
}st;
st *create()
{
char m[5];
int n;
int x,i=0;
st *p,*q,*h;
h=(st *)malloc(sizeof(st));
p=h;
printf("请输入节点数: ");
scanf("%d",&x);
while(i<x)
{
printf("please input num: ");
scanf("%d",&n);
printf("please input name: ");
scanf("%s",m);
q=(st *) malloc(sizeof(st));
p->next=q;
q->num=n;
strcpy(q->name,m);
p=q;
i++;
}
p->next=NULL;
return h;
}
void disp(st *h)
{
st *p,*q;
p=h->next;
q=h;
while(p!=NULL)
{
p->front=q;
q=p;
p=p->next;
}
q=p->front;
while(q!=h)
{

printf("[%d]->[%s]->",q->num,q->name);
q=q->front;
}
printf("head\n");
}

void main()
{
st *list;
list=create();
disp(list);
}

搜索更多相关主题的帖子: 链表 
2007-08-19 15:37
gestopaxmc
Rank: 1
等 级:新手上路
帖 子:69
专家分:0
注 册:2007-1-2
收藏
得分:0 

玉树临风赛潘安,一树梨花压海棠的.......
2007-08-19 15:42
gestopaxmc
Rank: 1
等 级:新手上路
帖 子:69
专家分:0
注 册:2007-1-2
收藏
得分:0 
那位帮我看看呀 谢谢

玉树临风赛潘安,一树梨花压海棠的.......
2007-08-19 18:16
静思
Rank: 3Rank: 3
来 自:沈阳
等 级:新手上路
威 望:8
帖 子:630
专家分:0
注 册:2006-2-28
收藏
得分:0 

我刚才调试了一下程序,楼主的disp()函数有错误,主要是指针出现了问题,楼主在创建双向链表的函数create()中没有对节点的front域进行处理,我帮楼主改了一下程序(程序详见附件)

MBCUtgir.rar (158.18 KB) 请问诸位 我的这个双向链表错在哪了




rE1XGuLD.rar (158.18 KB) 请问诸位 我的这个双向链表错在哪了


英者自知,雄者自胜
2007-08-19 20:40
gestopaxmc
Rank: 1
等 级:新手上路
帖 子:69
专家分:0
注 册:2007-1-2
收藏
得分:0 
谢谢楼上的!本来是想先建个单链表 然后在加个前指针变成双链后逆序显示下!!是不是我这样的想法不对呢!!

玉树临风赛潘安,一树梨花压海棠的.......
2007-08-19 22:44
快速回复:请问诸位 我的这个双向链表错在哪了
数据加载中...
 
   



关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.016078 second(s), 8 queries.
Copyright©2004-2024, BCCN.NET, All Rights Reserved