用指向指针的指针的方法对5个字符串排序并输出。

思路:利用冒泡法进行排序。

#include <stdio.h>
#include<stdlib.h>
#include<string.h>
void *compare(char **p)
{
	char **q,**s,*t;
	for(q=p;q<p+4;q++)
	{
		for(s=q+1;s<p+5;s++)
		{
			if(strcmp(*q,*s)>0)
			{
				t=*q;
				*q=*s;
				*s=t;
			}
		}
	}
	return 0;
}
void main()
{
	char *a[5],b[5][20],**p;
	int i;
	for(i=0;i<5;i++)
	a[i]=b[i];
	printf("请输入字符串:\n");
	for(i=0;i<5;i++)
	scanf("%s",a[i]);
	p=a;
	compare(p);
	printf("排序后输出为:\n");
	for(i=0;i<5;i++)
		{
			printf("%s\n",a[i]);
		}
} 

用指向指针的指针的方法对5个字符串排序并输出。