排序字符串数组函数(两种方法)
2015-11-07 15:02
453 查看
//方法一: #include <stdio.h> #include <string.h> void sort(char *arr[], int n) { char *tmp; int i, j, k; for (i = 0; i < n - 1; i++) //选择排序 { k = i; for (j = i + 1; j < n; j++) { if (strcmp(arr[k], arr[j])>0) { k = j; } } tmp = arr[i]; arr[i] = arr[k]; arr[k] = tmp; } } void print(char *arr[], int n) { int i = 0; for (i = 0; i < n; i++) { printf("%s\n", arr[i]); } } int main() { int n = 5; char *arr[] = { "abcde", "efghi", "hijkl", "bcdef", "defgh" }; sort(arr, n); print(arr, n); return 0; } //方法二: #include <stdio.h> #include <string.h> int main() { char arr[5][30] = { "aaaa", "cccc", "bbbb", "eeee", "dddd" }; int i = 0, j = 0; char tmp[30] = { 0 }; for (i = 0; i < 4; i++) //冒泡排序 { for (j = 0; j < 4 - i; j++) { if (strcmp(arr[j], arr[j + 1]) > 0) { strcpy(tmp, arr[j]); strcpy(arr[j], arr[j + 1]); strcpy(arr[j + 1], tmp); } } } for (i = 0; i < 5; i++) { printf("%s\n", arr[i]); } return 0; }
相关文章推荐
- 在命令行用 sort 进行排序
- 文件遍历排序函数
- C#选择排序法实例分析
- C#插入法排序算法实例分析
- C#实现Datatable排序的方法
- SQLSERVER的排序问题结果不是想要的
- Windows Powershell排序和分组管道结果
- C#通过IComparable实现ListT.sort()排序
- C#选择法排序实例分析
- SQL学习笔记四 聚合函数、排序方法
- C#对list列表进行随机排序的方法
- 一根网线内的8根线哪4根是传输数据的,哪四根是防干扰的
- C#折半插入排序算法实现方法
- SQL进行排序、分组、统计的10个新技巧分享
- C++实现位图排序实例
- 基于C++实现的各种内部排序算法汇总
- C++线性时间的排序算法分析
- SQL行号排序和分页(SQL查询中插入行号 自定义分页的另类实现)
- PHP下对数组进行排序的函数
- PHP数组排序之sort、asort与ksort用法实例