题目来源:2010年哈尔滨工业大学计算机研究生机试真题
时间限制:1 秒 内存限制:32 兆
- 题目描述:
输入一个字符串,长度小于等于200,然后将输出按字符顺序升序排序后的字符串。
输入:
测试数据有多组,输入字符串。
输出:
对于每组输入,输出处理后的结果。
样例输入:
bacd
样例输出:
abcd
这个题目就是将输入的字符串中的字母进行一个排序,故我们需要知道字符串的长度,然后调用sort函数进行排序即可。
AC代码:
#include <iostream>
#include <stdio.h>
#include <string.h>
#include <algorithm>
using namespace std;
int main()
{
int l;
char a[1000];
while(gets(a)){
l=strlen(a);
sort(a,a+l);
printf("%s\n",a);
}
return 0;
}
这里利用gets函数来获取输入的字符串,使用字符串的strlen函数来取得字符串的长度:
gets从标准输入设备读字符串函数,其可以无限读取,不会判断上限,以回车结束读取,所以程序员应该确保buffer的空间足够大,以便在执行读操作时不发生溢出。
(1)gets()从标准输入设备读字符串函数,其可以无限读取,不会判断上限,以回车结束读取,所以程序员应该确保buffer的空间足够大,以便在执行读操作时不发生溢出。
定义为:
char * gets(char * s)
{
...
return s;
}
(2)unsigned strlen(char *s):求字符串s的长度,返回串中字符(不计最后的'\0')个数。
171万+

被折叠的 条评论
为什么被折叠?



