最好是完整的程序,链表首先要排序,再倒置~~谢谢了!
下面是我的排序求最小值的程序,看看能改吗?
#include<stdio.h>
#include<stdlib.h>
#define NULL 0
#define MAXNUM 100
#define FALSE 0
#define TRUE 1
#define R 100
#define YSGS 20
struct Node
typedef struct Node *PNode;
struct Node
{
DataType info;
PNode link;
};
typedef struct Node *LinkList;
LinkList createNullList_link(void)
{
   LinkList llist=(LinkList)malloc(sizeof(struct Node));
   if(llist!=NULL)
      llist->link=NULL;
    else
      printf("\nOut of space!\n");
    return(llist);
  }
  int isNullList_link(LinkList llist)
  {
   return(llist->link==NULL);
   }
   PNode locate_link(LinkList llist,DataType x)
{
   PNode p;
   if(llist==NULL)return(NULL);
   p=llist->link;
   while(p!=NULL && p->info!=x)p=p->link;
   return(p);
}
  int inserPost_link(LinkList llist,PNode p,DataType x)
  {
    PNode q=(PNode)malloc(sizeof(struct Node));
    if(q==NULL)
     {printf("\nOut of space!!!\n");
      return(0);
     }
   else
    {
     q->info=x;q->link=p->link;p->link=q;return(1);
     }
  }
  main()
  {
    int i,min,mini;
    LinkList p1;
    p1=createNullList_link();
    randomize();
    clrscr();
    printf("\n\n");
    for(i=0;i<YSGS;i++)
    insert_link(p1,i,random(R));
    print_link(p1);
    min=p1->element[0];
    mini=0;
    for(i=1;i<p1->n;i++)
    if(min>p1->element[i])
       {min=p1->element[i];
       mini=i;
       }
     printf("\n\nmin=%d  num=%d",min,mini+1);
      }



											
	    

	