加载中...

浙江理工大学入队200题——14D

问题 D: 零基础学C/C++149——重组字符串

题目描述

输入一个以回车结束的字符串,将字符串中的字符按ASCII码从小到大顺序重组后输出。

输入

输入为多组测试数据。

输入一个以回车结束的字符串(少于80个字符)。

输出

将字符串中的字符按ASCII码从小到大顺序重组后输出

样例输入 Copy

Student

样例输出 Copy

Sdenttu

题解

你要知道char类型之间相互比较的话,是用ASCII码比较的,因此直接当成数字比较就好
直接(╯#-_-)╯~~~~~~~~~~~~~~~~~╧═╧

代码(AC)

点击查看代码
#include<stdio.h>
#include<string.h>
#include<iostream>
using namespace std;
int main()
{
	char a[82];
	while(gets(a)!=NULL)
	{   int i,j,t;
		int m=strlen(a);
		for(i=0;i<m;i++)
		{
			for(int j=0;j<m;j++)
			{
				if(a[j]>a[j+1])
				{
					t=a[j+1];a[j+1]=a[j];a[j]=t;
				}
			}
		}
		for(int i=1;i<=m;i++)
		{
		  cout<<a[i];
		}
		cout<<endl;
	}
	return 0;
	
}
posted @ 2022-10-29 20:12  shany212  阅读(40)  评论(0编辑  收藏  举报