#include<stdio.h>
#include<stdlib.h>
typedef struct NODE
{
int data;
struct NODE *next;
}Node,*Linklist;
Linklist Creat()
{
Node *l,*s,*r;
int n,flag=1;
l=(Node*)malloc(sizeof(Node));
l->next=NULL;
r=l;
while(flag)
{
scanf("%d",&n);
if(n!=0)
{
s=(Node*)malloc(sizeof(Node));
s->data=n;
r->next=s;
r=s;
}
else
{
flag=0;
r->next=NULL;
}
}
return l;
}
void print(Linklist l)
{
Node *s;
s=l->next;
while(s!=NULL)
{
printf("%d ",s->data);
s=s->next;
}
}
Linklist Sort(Linklist l)
{
Node *t,*p1,*p2;
int Data;
temp=(Node*)malloc(sizeof(Node));
for(p1=l->next;p1!=NULL;p1=p1->next)
{
for(p2=p1->next;p2!=NULL;p2=p2->next)
{
if(p1->data<p2->data)
{
t->data=p1->data;
p1->data=p2->data;
p2->data=t;
}
}
}
return l;
}
void main()
{
Node *l;
l=(Node*)malloc(sizeof(Node));
l=Creat();
print(l);
Sort(Linklist l);
print(l);
}
#include<stdlib.h>
typedef struct NODE
{
int data;
struct NODE *next;
}Node,*Linklist;
Linklist Creat()
{
Node *l,*s,*r;
int n,flag=1;
l=(Node*)malloc(sizeof(Node));
l->next=NULL;
r=l;
while(flag)
{
scanf("%d",&n);
if(n!=0)
{
s=(Node*)malloc(sizeof(Node));
s->data=n;
r->next=s;
r=s;
}
else
{
flag=0;
r->next=NULL;
}
}
return l;
}
void print(Linklist l)
{
Node *s;
s=l->next;
while(s!=NULL)
{
printf("%d ",s->data);
s=s->next;
}
}
Linklist Sort(Linklist l)
{
Node *t,*p1,*p2;
int Data;
temp=(Node*)malloc(sizeof(Node));
for(p1=l->next;p1!=NULL;p1=p1->next)
{
for(p2=p1->next;p2!=NULL;p2=p2->next)
{
if(p1->data<p2->data)
{
t->data=p1->data;
p1->data=p2->data;
p2->data=t;
}
}
}
return l;
}
void main()
{
Node *l;
l=(Node*)malloc(sizeof(Node));
l=Creat();
print(l);
Sort(Linklist l);
print(l);
}