标题:[原创]求助,问题在哪里?
只看楼主
evil_evil
Rank: 1
等 级:新手上路
帖 子:38
专家分:0
注 册:2006-3-4
 问题点数:0 回复次数:4 
[原创]求助,问题在哪里?
#include<stdio.h>
#include<stdlib.h>
struct lnode
{
int data;
struct lnode *next;
};
main()
{
int n,i;
struct lnode *new,*q,*head;
printf("please input the length of link:");
scanf("%d",&n);
head=NULL; //逆位序输入N个元素的值,建立单链线性表
for(i=n;i>0;i--)
{
new=(struct lnode *)malloc(sizeof(struct lnode));
scanf("%d",&new->data);
new->next=head;
head=new;
}
q=head;
printf("按逆序输出\n");
for(i=0;i<n;i++)
{
printf("%d\n",q->data);
q=q->next;
}
struct lnode *p,*s,*k; //逆转链表,假设head!=NULL
k=head;
s=k->next;
p=s->next;
if(s->next!=NULL)
{
while(p->next!=NULL)
{
s->next=k;
if (k==head)
k->next=NULL;
k=s;
s=p;
p=p->next;
}
if(p->next==NULL)
{
p->next=s;
s->next=k;
}
head=p; /*表头指向p*/
}
else
{
s->next=k;
k->next=NULL;
head=s; /*表头指向s*/
}
q=head;
printf("输出\n");
for(i=0;i<n;i++)
{
printf("%d\n",q->data);
q=q->next;
}
}
大家好,程序没有链表逆转后面那部分就没问题,加上后就有问题了,能解释一下吗?
搜索更多相关主题的帖子: include please 线性表 元素 
2006-03-05 15:57
tomic
Rank: 1
等 级:新手上路
帖 子:45
专家分:0
注 册:2005-11-17
得分:0 
struct lnode *new,*q,*head;是因为你用了关键字new
2006-03-05 16:53
evil_evil
Rank: 1
等 级:新手上路
帖 子:38
专家分:0
注 册:2006-3-4
得分:0 
讲详细点吧,不太清楚啊,红色上面的没问题啊

[此贴子已经被作者于2006-3-5 17:17:57编辑过]



潜水员!
2006-03-05 17:17
evil_evil
Rank: 1
等 级:新手上路
帖 子:38
专家分:0
注 册:2006-3-4
得分:0 
没人看啊???

潜水员!
2006-03-07 12:49
evil_evil
Rank: 1
等 级:新手上路
帖 子:38
专家分:0
注 册:2006-3-4
得分:0 
问题已解决!!!!

潜水员!
2006-03-07 15:38



参与讨论请移步原网站贴子:https://bbs.bccn.net/thread-48533-1-1.html




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

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