字符串问题
用指针数组编写一个函数,用于将 5 个预定义的国家名排序。在 main 函数中调用该函数完成排序,并输出排序前后的信息。(排序函数原型 void sort(char*name[],int n);其中 n 为字符串的个数)
[解决办法]
程序是在VC下编译的,希望楼主至少给我20分,谢谢
#include <stdio.h>
#include <string.h>
char *name[5]={ "France ", "Chine ", "Amerance ", "English ", "jappen "};
void sort(char*name[], int n)
{
int i, j;
char *temp;
i = j = 0;
temp = NULL;
for (i=0; i <n; i++)
{
for (j=i+1; j <n; j++)
{
if (strcmp(name[i], name[j]) > 0)
{
temp = name[i];
name[i] = name[j];
name[j] = temp;
}
}
}
}
int main(void)
{
puts ( "排序之前: ");
for (int i=0; i <5; i++)
{
printf ( "%-10s ", name[i]);
}
sort(name, 5);
puts ( "\n排序以后: ");
for (int j =0; j <5; j++)
{
printf ( "%-10s ", name[j]);
}
putchar ( '\n ');
return 0;
}