ny04 ASCII码排序 C++

ASCII码排序

时间限制:3000 ms  |  内存限制:65535 KB

难度:2

输入

第一行输入一个数N,表示有N组测试数据。后面的N行输入多组数据,每组输入数据都是占一行,有三个字符组成,之间无空格。

输出

对于每组输入数据,输出一行,字符中间用一个空格分开。

样例输入

2
qwe
asd

样例输出

e q w
a d s

描述

输入三个字符(可以重复)后,按各字符的ASCII码从小到大的顺序输出这三个字符。

#include <iostream>
using namespace std;
int i=0;
void paixu(char *a,char *b,char *c)
{
	char temp;
	if(a[i]<b[i])
	{
		temp=a[i];
		a[i]=b[i];
		b[i]=temp;
	}
	if(b[i]<c[i])
	{
		temp=b[i];
		b[i]=c[i];
		c[i]=temp;
	}
	if(a[i]<b[i])
	{
		temp=a[i];
		a[i]=b[i];
		b[i]=temp;
	}
	

	i++;
	
	
}
int main()
{
	int n;
	char a[100],b[100],c[100];
	cin>>n;
	for(int i=0;i<n;i++)
	{
		cin>>a[i]>>b[i]>>c[i];
		paixu(a,b,c);
	}
	
	
	for(int j=0;j<n;j++)
	{
		cout<<c[j]<<' '<<b[j]<<' '<<a[j]<<endl;
	}
	return 0;
}

卡住的地方:

1.排序的地方是(a<b     ->     b<c     ->     a<b)

2.报了Systemerror,说是内存不够。。我就把数组从50改成10,又改成5,最后改成100好了。。。。。。。。。。。。。。

(真的,骗你是小狗.jpg)

猜你喜欢

转载自blog.csdn.net/eurus_/article/details/82465795
今日推荐