C 字符串數(shù)組排序的小例子
#include<stdio.h>
#include<string.h>
#include <malloc.h>
void q_sortB(char str[20][20], int n);
void qs(char str[20][20],int n);
void main() {
int i, n;
char str[20][20] = { { "Adam" }, { "Bob" }, { "Dimen" }, { "Colin" }, {
"Correal" }, { "Sick" }, { "Rachel" } };
char * str1[20]= { { "Adam" }, { "Bob" }, { "Dimen" }, { "Colin" },
{ "Correal" }, { "Sick" }, { "Rachel" } };
qs(str,7);
q_sortB(str, 7);
for (i = 0; i < 7; i++){
printf("%s\n", str[i]);
}
}
void qs(char str[20][20],int n){
char temp[20];
int i=0;
int j=0;
int min=i;
for(i=0;i<n-1;i++){
min=i;
for(j=i;j<n;j++){//本次找最小值的范圍是從i開始 到最末尾
if( strcmp(str[j],str[min])==-1 ){
min=j;
}
}
//此時min指向最小的
//那么應該把min放在已排序部分的后一個//也就是本次排序的第一個
strcpy(temp,str[i]);
strcpy(str[i],str[min]);
strcpy(str[min],temp);
}
}
//泡泡
void q_sortB(char str[20][20], int n) {
char a[20];
int i, j;
for (i = 0; i < n-1; i++) {
for (j = i ; j < n-1; j++)
if (strcmp(str[j], str[j + 1]) > 0) {
strcpy(a, str[j]);
strcpy(str[j], str[j + 1]);
strcpy(str[j+1], a);
}
}
}
相關(guān)文章
用C/C++實現(xiàn)linux下檢測網(wǎng)絡接口狀態(tài)
這篇文章主要為大家詳細介紹了用c/c++實現(xiàn)linux下檢測網(wǎng)絡接口狀態(tài),具有一定的參考價值,感興趣的小伙伴們可以參考一下2018-06-06
VC基于ADO技術(shù)訪問數(shù)據(jù)庫的方法
這篇文章主要介紹了VC基于ADO技術(shù)訪問數(shù)據(jù)庫的方法,較為詳細的分析了VC使用ADO操作數(shù)據(jù)庫的相關(guān)實現(xiàn)技巧,具有一定參考借鑒價值,需要的朋友可以參考下2015-10-10
統(tǒng)計C語言二叉樹中葉子結(jié)點個數(shù)
這篇文章主要介紹的是統(tǒng)計C語言二叉樹中葉子結(jié)點個數(shù),文章以C語言二叉樹中葉子結(jié)點為基礎分享一個簡單小栗子講解,具有一定的知識參考價值,需要的小伙伴可以參考一下2022-02-02

