字母排序求助
#include<stdio.h>
#include<string.h>
void swap(char x[],char y[]);
void main()
{
int i,j;
char ch[7][20]={"george","albert","tina","xavier","roger","tim","william"};
for (i=0;i<6;i++)
{
for (j=0;j<6-i;j++)
{
if(strcmp(ch[j],ch[j+1])>0)
swap(ch[j],ch[j+1]);
}
}
for (i=0;i<7;i++)
printf ("%s\t",ch[i]);
}
void swap(char x[],char y[])
{
char temp[20];
strcpy(temp,x);
strcpy(x,y);
strcpy(y,temp);
}
那位大虾能说明一下..I,J两个变量是杀意思.
搜索更多相关的解决方案:
字母
----------------解决方案--------------------------------------------------------
I,J两个变量应该是用来控制比较次数的
----------------解决方案--------------------------------------------------------
没看错的话应该是冒泡吧,每次选出一个最大的,i是代表已经排完序的字符的个数,j是代表还没有排完序的字符的个数
----------------解决方案--------------------------------------------------------