输入n个字符串,进行排序,然后从小到大输出

/******************************************************************************************* ** 函 数名 称: CompareString() ** 作 者: zyh ** 版 本: 1.0.0 ** 日 期: 2011-6-20 ** 功 能 描 述: 输入n个字符串,从小到大输出 ** 被本函数调用的函数清单: ** 调用本函数的函数清单: ** 被访问的表: ** 被修改的表 : ** 输 入: char *string_array_in[] --- 输入数组 int total --- 数组元素个数 ** 输 出: char *string_array_out[] --- 输出结果数组 ** 返 回 值: 无 ** 其 他: ** 修 改 历史: 1. 修改时间: 修 改 者: 版 本: 修改简述: 2. ...... *********************************************************************************************/ void CompareString(char *string_array_in[], char *string_array_out[], int total) /* 实质上是选择排序法 */ { int liv_i ; /* 挨个元素查找,比较轮数,N个元素比较N-1轮 */ int liv_j; /* 第i个元素比较N-1-i次 */ int small; /* 选择排序法,存放最小元素的下标 */ char *temp; /* 交换临时变量 */ for (liv_i = 0; liv_i < total -1; liv_i++) { small = liv_i; for (liv_j = liv_i+1; liv_j < total; liv_j++) { if ( strcmp(string_array_in[liv_j],string_array_in[small]) <0 ) /* 不能用 if (string_array_in[liv_j] < string_array_in[small] ) */ { small = liv_j; } } if (small != liv_i) { temp = string_array_in[small]; string_array_in[small] = string_array_in[liv_i]; string_array_in[liv_i] = temp; } } for (liv_i = 0; liv_i < total; liv_i++) { string_array_out[liv_i] = string_array_in[liv_i]; } }

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值