C语言输入3个字符串,按由小到大的顺序输出 使用指针
时间: 2023-10-31 20:20:42 浏览: 203
可以使用指针数组来存储3个字符串,然后使用指针和strcmp()函数进行字符串的比较,最后按顺序输出。
以下是使用指针的示例代码:
```c
#include <stdio.h>
#include <string.h>
int main()
{
char *str[3], *temp;
int i, j;
//输入3个字符串
printf("请输入3个字符串:\n");
for(i = 0; i < 3; i++)
{
char s[100];
scanf("%s", s);
str[i] = (char *)malloc(strlen(s) + 1); //为每个字符串动态分配内存
strcpy(str[i], s);
}
//使用指针和strcmp()函数进行字符串的比较
for(i = 0; i < 2; i++)
{
for(j = i + 1; j < 3; j++)
{
if(strcmp(str[i], str[j]) > 0)
{
temp = str[i];
str[i] = str[j];
str[j] = temp;
}
}
}
//按顺序输出排序后的字符串
printf("排序后的字符串为:\n");
for(i = 0; i < 3; i++)
{
printf("%s\n", str[i]);
}
//释放动态分配的内存
for(i = 0; i < 3; i++)
{
free(str[i]);
}
return 0;
}
```
需要注意的是,使用指针数组存储字符串时,需要为每个字符串动态分配内存。同时,在使用完毕后,需要释放动态分配的内存。
阅读全文