//按字母顺序排序多个国家的名字
#include <stdio.h>
#include <string.h>
void sortCountry(char*a[],unsigned longlen)
{
for (int i = 0; i <= len - 2;i++)
{
for (intj = 0; j < len - 1- i ; j++)
{
//传首地址!!!根本无法传地址对应的字符串。如*a【j】和*a【j + 1】,因为指向的是字符串,*a【j】,只能代表第j个字符串的第一个字母!所以可以直接传首地址?
if (strcmp(a[j], a[j + 1])> 0)
{
char*temp = a[j];
a[j] = a[j + 1];
a[j + 1]= temp;
}
}
}
}
int main(intargc, const char* argv[])
{
char* a[] = {"China11","America","korea","England","German"};
// unsigned long len = strlen(*a);//错了,a =&a[0],*a = a[0]
unsigned longlen = sizeof(a) / sizeof(a[0]);
sortCountry(a,len);
for (int i = 0; i < len; i++)
{
printf("%s\n",a[i]);//%s打印,给地址即可!
}
return 0;
}