在學(xué)習(xí)C語(yǔ)言之前,一定要對(duì)下面的知識(shí)點(diǎn)有所了解,如果不了解下面的知識(shí),請(qǐng)前往下面對(duì)應(yīng)的鏈接,下面就由武林技術(shù)編輯帶來(lái)C語(yǔ)言實(shí)現(xiàn)字符串?dāng)?shù)組排序的示例代碼,一起進(jìn)行學(xué)習(xí)吧。
?
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 ??????? 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
??????? for(j=i;j
??????????????? min=j;
??????????? }
??????? }
??????? //此時(shí)min指向最小的
??????? //那么應(yīng)該把min放在已排序部分的后一個(gè)//也就是本次排序的第一個(gè)
??????? 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 ??????? for (j = i ; j ??????????? if (strcmp(str[j], str[j + 1]) > 0) {
??????????????? strcpy(a, str[j]);
??????????????? strcpy(str[j], str[j + 1]);
??????????????? strcpy(str[j+1], a);
??????????? }
??? }
}
到這里,C語(yǔ)言實(shí)現(xiàn)字符串?dāng)?shù)組排序的示例代碼就完成了,如果有什么不清楚可以留言給我,如果覺(jué)得我寫得不錯(cuò)的話,請(qǐng)給我一個(gè)大拇指,謝謝!
新聞熱點(diǎn)
疑難解答
圖片精選