Chinaunix首页 | 论坛 | 博客
  • 博客访问: 393666
  • 博文数量: 105
  • 博客积分: 4100
  • 博客等级: 上校
  • 技术积分: 1040
  • 用 户 组: 普通用户
  • 注册时间: 2008-07-27 19:57
文章存档

2012年(1)

2011年(9)

2010年(4)

2009年(25)

2008年(66)

我的朋友

分类:

2008-07-27 20:51:11

字符串的排序
 
#include
#include
#define LENGTH 20
#define N 5
void main()
{
void sort(char *name[],int n);
void print(char *name[],int n);
int i;
char string[N][LENGTH];
char *p;
char *temp[N];
  for(i=0;i  {
  printf("Please input the %d compare string:\n",i+1);
  p=*(string+i);/*二维数组对应一行的首地址传给一个指针*/
  gets(p);
  temp[i]=p;
  }
  sort(temp,N);
  print(temp,N);
}
void sort(char *name[],int n)/*从小到大排序的函数*/
{
char *temp;
int i,j,k;
for(i=0;i {
 k=i;
 for(j=i+1;j  {
  if(strcmp(name[k],name[j])>0)
   k=j;
  if(k!=i)/*只有上一个if成立才执行*/
   {
   temp=name[i];
   name[i]=name[k];
   name[k]=temp;
   }
  }
 }
}
void print(char *name[],int n)/*用于输出的函数*/
{
 int i;
 printf("The compared strings is:\n");
 for(i=0;i printf("%s\n",name[i]);
}
阅读(554) | 评论(0) | 转发(0) |
给主人留下些什么吧!~~