输入三个字符串,按照由大到小的顺序输出,要求用指针方法处理。
时间: 2023-12-10 20:39:45 浏览: 30
可以使用指针数组进行排序,具体实现如下:
```c
#include <stdio.h>
#include <string.h>
void sort(char** arr, int n) {
char* temp;
for (int i = 0; i < n - 1; i++) {
for (int j = i + 1; j < n; j++) {
if (strcmp(arr[i], arr[j]) < 0) {
temp = arr[i];
arr[i] = arr[j];
arr[j] = temp;
}
}
}
}
int main() {
char str1[100], str2[100], str3[100];
printf("输入三个字符串:");
scanf("%s %s %s", str1, str2, str3);
char* arr[3] = {str1, str2, str3};
sort(arr, 3);
printf("按照由大到小的顺序输出:\n");
for (int i = 0; i < 3; i++) {
printf("%s\n", arr[i]);
}
return 0;
}
```
输入三个字符串后,将它们存储在字符数组中,并将字符数组的地址存储在指针数组中。然后调用 `sort` 函数进行排序,最后按照顺序输出即可。