输入3个字符串,按从小到大输出(指针)
时间: 2023-10-10 08:13:02 浏览: 84
输入一串字符和输出
好的,可以使用指针数组和字符串比较的方式来实现。具体步骤如下:
1. 定义一个指针数组,数组元素为三个字符串的指针;
2. 使用冒泡排序算法对指针数组进行排序,排序时比较指针所指向的字符串大小;
3. 输出排序后的字符串。
下面是使用 C 语言实现的示例代码:
```c
#include <stdio.h>
#include <string.h>
int main()
{
char str1[100], str2[100], str3[100];
char *ptr[3];
printf("请输入三个字符串,以空格分隔:");
scanf("%s %s %s", str1, str2, str3);
ptr[0] = str1;
ptr[1] = str2;
ptr[2] = str3;
for (int i = 0; i < 2; i++) {
for (int j = 0; j < 2 - i; j++) {
if (strcmp(ptr[j], ptr[j+1]) > 0) {
char *temp = ptr[j];
ptr[j] = ptr[j+1];
ptr[j+1] = temp;
}
}
}
printf("排序后的字符串为:%s %s %s\n", ptr[0], ptr[1], ptr[2]);
return 0;
}
```
其中,`scanf` 函数用于获取用户输入的三个字符串,`strcmp` 函数用于比较两个字符串的大小,返回值为正数表示前者大,为负数表示后者大,为零表示相等。最后,使用指针数组输出排序后的字符串。
阅读全文