HDU2000(ASCII码排序)

HDU2000(ASCII码排序)

#include<stdio.h>
#include<stdlib.h>
int main()
{
	char a[100];
	char temp;

	while ((gets(a)) != NULL)
	{
		if (a[0] > a[1])
		{
			temp = a[1];
			a[1] = a[0];
			a[0] = temp;
		}
		if (a[0] > a[2])
		{
			temp = a[2];
			a[2] = a[0];
			a[0] = temp;
		}
		if (a[1] > a[2])
		{
			temp = a[2];
			a[2] = a[1];
			a[1] = temp;
		}
		printf("%c %c %c\n", a[0], a[1], a[2]);
	}
	return 0;
}

备注:本题目可以用下式来替换输入

 while (scanf("%s",a)!=EOF)

一.gets()函数
gets从标准输入设备读字符串函数,其可以无限读取,不会判断上限,以回车结束读取,所以程序员应该确保buffer的空间足够大,以便在执行读操作时不发生溢出。
1.功能:
从stdin流中读取字符串,直至接受到换行符或EOF时停止,并将读取的结果存放在buffer指针所指向的字符数组中。换行符不作为读取串的内容,读取的换行符被转换为‘\0’空字符,并由此来结束字符串。
2.返回值:
(1)读入成功,返回与参数buffer相同的指针;
(2)读入过程中遇到EOF(End-of-File)或发生错误,返回NULL指针。所以在遇到返回值为NULL的情况,要用ferror或feof函数检查是发生错误还是遇到EOF。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值