以下是一个使用 C 语言实现冒泡排序对字符串数组进行升序排列的示例代码: ```c #include <stdio.h> #include <string.h> // 交换两个字符串 void swap(char *str1[], char *str2[]) { char *temp = *str1; *str1 = *str2; *str2 = temp; } // 冒泡排序函数 void bubbleSort(char *arr[], int n) { int i, j; for (i = 0; i < n - 1; i++) { for (j = 0; j < n - i - 1; j++) { if (strcmp(arr[j], arr[j + 1]) > 0) { swap(&arr[j], &arr[j + 1]); } } } } // 打印字符串数组 void printArray(char *arr[], int size) { for (int i = 0; i < size; i++) printf("%s ", arr[i]); printf("\n"); } int main() { char *names[] = {"Alice", "Bob", "Charlie", "David", "Eve"}; int n = sizeof(names) / sizeof(names[0]); printf("排序前的名字数组:\n"); printArray(names, n); bubbleSort(names, n); printf("排序后的名字数组:\n"); printArray(names, n); return 0; } ``` 在上述代码中,`bubbleSort` 函数用于执行冒泡排序,通过比较字符串的字典序进行交换。`swap` 函数用于交换两个字符串的指针。`printArray` 函数用于打印字符串数组。在 `main` 函数中,创建了一个字符串数组,并调用排序函数和打印函数来展示排序前后的结果。 [2024-08-28 11:45:42 | AI写代码神器 | 430点数解答]