自定义函数paixu()的作用是对字符串进行排序,paixu函数的形参string是指指针数组名,接收实参传过来的数组的首地址,这里使用排序法进行排序,本实例应用了strcmp字符串函数进行比较。
函数解析:
strcmp字符串比较函数:int strcmp(char *p1,char *p2)
应有的头文件:#include<string.h>
函数功能:比较两个字符串的大小,其实就是将两个字符串从首字符逐一比较, 字符的比较是按照字符的ASCLL码值进行比较,
返回值:返回结果为str1-str2的值,返回结果大于0,表示字符串str1大于字符串str2的值;返回结果等于0表示两个字符串大小相等;返回结果小于0,表示字符串str1小于字符串str2
//对程序中给出的字符串按照首字母由小到大的顺序输出,且将排序结果显示在窗体上
#include <stdio.h>
#include <string.h>
//定义调用函数
void paixu(char* string[], int n)
{
char* temp;
int i, j;
for (i = 0; i < n; i++)
{
for (j = i + 1; j < n; j++)
{
if (strcmp(string[i], string[j]) > 0)//比较字符串大小,交换位置
{
temp = string[i];
string[i] = string[j];
string[j] = temp;
}
}
}
}
int main()
{
int n = 5;
char* ch[] = { "zhangsan","lisi","wangwu","xiaobudian","liusanjie" };
paixu(ch, n);
//输出结果
for (int i = 0; i < n; i++)
{
printf("%s\n", ch[i]);
}
}