代码如下:
#include#include void BubbleSort_str(const char** arr, int len) //冒泡排序 { for (int i = 0; i < len - 1; i++) { for (int j = 0; j + 1 < len - i; j++) //此处为啥是j+1 0) //此处借助了字符串比较函数strcmp,把大的字符串放后面,小的放前面 { const char* tmp = arr[j]; arr[j] = arr[j + 1]; arr[j + 1] = tmp; } } } } void Show(const char** arr, int len) //展示函数 { for (int i = 0; i < len; i++) { printf("%sn", arr[i]); } } int main() { const char* arr[] = { "China", "Japan", "Engla", "Ameri", "India" , "Apirl", "Dorge", "Herri", "Piggg", "Stary" }; //输入10串等长的字符串 BubbleSort_str(arr, sizeof(arr)/sizeof(arr[0])); //冒泡排序 Show(arr, sizeof(arr)/sizeof(arr[0])); //把排好的序输出 }
调试结果为:



