输入3个字符串,按字符串由短到长的顺序输出

该博客介绍如何使用C++编程,通过指针操作,按照字符串长度从短到长的顺序输出三个输入的字符串。代码中包含了输入字符串、定义指针、比较字符串长度以及交换字符串顺序的函数实现。
摘要由CSDN通过智能技术生成

输入3个字符串,按字符串由短到长的顺序输出,要求使用指针。


#include "stdafx.h"
#include<iostream>
#include<string.h>
#include<stdio.h>
using namespace std;


char a[80],b[80],c[80];
char *p1,*p2,*p3;

//输入三个字符串,三个字符型指针分别三个字符串
int _tmain(int argc, _TCHAR* argv[])
{
void bijiao();       //因为bijiao在main函数后面定义的,所以这里要先声明一下
cin>>a;
cin>>b;
cin>>c;
p1=a;
p2=b;
p3=c;


bijiao();


return 0;
}

//函数change将两个字符数组里存放

### 回答1: 首先,我们需要创建一个函数来实现排序功能。这个函数接受3个字符串作为参数,然后通过比较它们的大小关系来决定它们的顺序。我们可以使用字符串比较操作符 "<" 来进行比较。 我们可以使用一个if语句嵌套来实现这个函数。首先,我们比较第一个字符串和第二个字符串的大小关系。如果第一个字符串小于第二个字符串,那么我们将第一个字符串放在前面,第二个字符串放在后面。如果第一个字符串大于第二个字符串,那么我们将第二个字符串放在前面,第一个字符串放在后面。如果两个字符串相等,那么我们就不需要做任何操作。 接下来,我们再次比较前面得到的结果和第三个字符串的大小关系。如果前面得到的结果小于第三个字符串,那么我们将三个字符串顺序保持不变。如果前面得到的结果大于第三个字符串,那么我们将第三个字符串放在前面,前面得到的结果放在后面。 最后,我们将排好序的三个字符串依次输出。 以下是函数的具体实现: def sort_string(a, b, c): if a < b: if b < c: sorted_strings = (a, b, c) elif a < c: sorted_strings = (a, c, b) else: sorted_strings = (c, a, b) else: if a < c: sorted_strings = (b, a, c) elif b < c: sorted_strings = (b, c, a) else: sorted_strings = (c, b, a) return sorted_strings a = input("请输入一个字符串:") b = input("请输入第二个字符串:") c = input("请输入三个字符串:") sorted_strings = sort_string(a, b, c) print("按由小到大顺序输出的结果为:", sorted_strings) 注意:以上代码为Python语言的实现。在中文输入时,可能会遇到编码问题,需要将输入字符串进行编码转换。如果使用其他编程语言,实现方法类似,只需对语法进行相应修改即可。 ### 回答2: 简单的方法是使用Python内置的排序函数sorted()来对字符串列表进行排序。 首先,输入三个字符串,并将它们存储在一个列表中: str_list = [] str1 = input("请输入一个字符串:") str_list.append(str1) str2 = input("请输入第二个字符串:") str_list.append(str2) str3 = input("请输入三个字符串:") str_list.append(str3) 然后,使用sorted()函数对列表进行排序,并将结果存储在一个新的列表中: sorted_list = sorted(str_list) 最后,按照从小到大的顺序输出排序后的字符串列表: print("按照由小到大的顺序输出:") for string in sorted_list: print(string) 这样就可以按照从小到大的顺序输出三个字符串。 ### 回答3: 可以利用字符串比较的方法,将输入三个字符串分别与另外两个字符串进行比较。按照由小到大的顺序依次输出。 设输入三个字符串为a、b和c。 首先,我们可以比较a和b的大小,可以使用字符串比较函数(如strcmp)。 若a小于b,则再比较a和c的大小,若a小于c,则输出a,接着比较b和c的大小,若b小于c,则输出b,最后输出c。 若a大于b,则交换a和b的值,再进行后续的比较。 若a等于b,则输出a,接着比较a和c的大小,若a小于c,则输出a,最后输出c。 以上步骤即可实现将三个字符串按照由小到大的顺序输出。 以下是一个示例代码的伪代码实现: ``` // 输入三个字符串 a、b、c // 假设 a、b、c 初始值为输入三个字符串 if(strcmp(a, b) > 0){ swap(a, b); } if(strcmp(a, c) > 0){ swap(a, c); } if(strcmp(b, c) > 0){ swap(b, c); } // 输出三个字符串按照从小到大的顺序 cout << a << ", " << b << ", " << c << endl; ``` 通过以上代码,就可以将输入三个字符串按照由小到大的顺序输出
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值