注册 登录
编程论坛 新人交流区

[求助]我编的程序好多错,线性链表问题

站龙一号 发布于 2007-11-12 15:23, 437 次点击

刚学习<数据结构>,这道题做了一天了!!!!1
原题:将一个无序的线性表A={11,16,8,5,14,10,38,32)换成一个升序排列的线性链表.

#include <malloc.h>
#include <stdio.h>
#define NULL 0
typedef struct LNode{
int data;
struct LNode *next;
}LNode,*LinkList;

LinkList creat()
{
struct LNode *head,*p,*q;int m;
m=0;
q=p=(LinkList*)malloc(sizeof(LNode));
head=NULL;
scanf("%d",&p->data);
while(p->data!='\n')
{
m=m+1;
if(m==1)head=p;
else q->next=p;
q=p;
p=(LinkList)malloc(sizeof(LNode));
scanf("%d",&p->data);
}
q->next=NULL;
return(head);
}

struct LNode mpsort(int n,LNode head)
{
int i,j,k;
char *q,*p;


for(i=1;i<n;i++)
for(k=1;k<=n-i;k++)
{
if(p->data>p->next->data)
{q=p->next;p=q;p->next=q->net->data;
}
for (j=1;j<=n;j++)
printf("%d",p);
}
}

main()
{
struct LNode *head,*p;
int n;n=8;
printf("input the numbers:\n"};
head=creat();

printf("排序后为 :\n");
L=mpsort(A,n);
}

0 回复
1