新浪博客

输入4个字母按字典顺序输出它们-题解分析

2022-11-13 10:52阅读:
今天我们看一下《小学生C++趣味编程》第21课课后习题完善程序。 题目要求:输入4个字母,按字典顺序输出它们。
输入:4个字母。
输出:按字典顺序输出4个字母。
解题思路:
所谓的字典顺序,就是指英文字母,a,b,c....z,a最小,z最大,按照字母表的先后顺序输出。
我们定义4个变量a1 a2 a3 a4,让a1存储最小的字母,a2存储第二小的字母,...a4存储最大的字母。
如何让a1存储最小呢?让a1和其他三个字母比较,如果发现哪个字母比a1小,就交换他们的值,让a1成为那个更小的字母。
比较完a1后,同样的思路,比较其他三个变量,最终输出a1 a2 a3 a4,即是从小到大输出。
下面看代码:
#include
using namespace std;
int main()
{
char a1,a2,a3,a4,temp;
cin>>a1>>a2>>a3>>a4;
if(a1>a2) //先确保a1最小,a1与2 3 4比较,比哪个大,就和谁交换
{
temp=a1;
a1=a2;
a2=temp;
}
if(a1>a3)
{
temp=a1;
a1=a3;
a3=temp;
}
if(a1>a4)
{
temp=a1;
a1=a4;
a4=temp;
}
if(a2>a3) //再确保a2是第二小
{
temp=a2;
a2=a3;
a3=temp;
}
if(a2>a4)
{
temp=a2;
a2=a4;
a4=temp;
}
if(a3>a4) //再确保a3第三小,同时a4也就是最后的了
{
temp=a3;

a3=a4;
a4=temp;
}
//按a1 a2 a3 a4顺序输出
cout<<a1<<' '<<a2<<' '<<a3<<' '<<a4<<endl;

return 0; //结束程序
}

我的更多文章

下载客户端阅读体验更佳

APP专享