第1个回答 2009-04-09
给:
#include<stdio.h>
#include<string.h>
void main()
{
char (*name)[10]=new char[10][10];
void sort(char (*name)[10]);
void print(char (*name)[10]);
int i;
printf("请输入10本书的名称,每输入一个用回车隔开:\n");
for(i=0;i<10;i++)
scanf("%s",name+i);
sort(name);
print(name);
}
void sort(char (*name)[10])
{ char temp[10];
int i,j;
for(i=0;i<9;i++)
for(j=0;j<9-i;j++)
{
if(strcmp(name[j],name[j+1])>0)
{ strcpy(temp,name[j]);//复制串应该用int strcpy(*a,*b);
strcpy(name[j],name[j+1]);
strcpy(name[j+1],temp);
}
}
}
void print(char (*name)[10])
{
int i;
printf("排序结果为:\n");
for(i=0;i<10;i++)
printf("%d %s\n",i+1,name[i]);
}