69,371
社区成员
发帖
与我相关
我的任务
分享
#include <stdio.h>
#include <string.h>
void rankArr(char *pr[], int n);
int main(){
char *p[] = { "china","japan","tokyo","pairs","narry" };
int i;
printf("排序前\n");
for (i = 0; i < 5; i++)
printf("%s\n", p[i]);
rankArr(p, 5);
printf("排序后\n");
for (i = 0; i < 5; i++)
printf("%s\n", p[i]);
return 0;
}
void rankArr(char *pr[], int n){
char *tmp;
int i, j, k;
for (i = 0; i < n; i++){
k = i;
for (j = i + 1; j < n; j++){
if (strcmp(pr[j], pr[k]) < 0) {
k = j;
}
}
if (k != i) {
tmp = pr[i];
pr[i] = pr[k];
pr[k] = tmp;
}
}
}