
#include<stdio.h>
#include<string.h>
void sort(char (*a)[105])
//const char *ptr
//定义一个指向字符常量的指针。
//指针指向可以修改,指针指向的值不可以修改。
//char const *ptr
//与1等价
//char * const ptr
//定义一个指向字符的指针常数。
//指针指向不能修改,指针指向的值可以修改
{
int i=0,j=0;
char temp[105];//中间量
for(j=0;j<9;j++){
for(i=0;i<9-j;i++)
{
if(strcmp(a[i],a[i+1]) > 0)//比较
{
strcpy(temp, a[i]);//小的在前
strcpy(a[i], a[i+1]);
strcpy(a[i+1], temp);
}
}
}
}
int main()
{
char a[10][105] = {0};//二维数组初始化
int i;
for(i=0;i<10;i++)
{
scanf("%s", a[i]);//输入
//gets(a[i]);
}
sort(a);//排序
for(i=0;i<10;i++)
{
printf("%s\n", a[i]);
}
}



![char和char *a[]和char (*a)[]](https://i-blog.csdnimg.cn/blog_migrate/702edee4719b01524942231d71865655.png)
这篇博客详细介绍了如何使用C语言实现字符串数组的排序算法,通过strcmp函数进行比较,并运用了临时变量进行交换操作。主要涉及字符串处理和基本排序技巧。
8228

被折叠的 条评论
为什么被折叠?



