串的简单处理

Time Limit: 1 Sec  Memory Limit: 128 MB
Submit: 39  Solved: 11
[Submit][Status][Web Board]

Description

串的处理
在实际的开发工作中,对字符串的处理是最常见的编程任务。本题目即是要求程序对用户输入的串进行处理。具体规则如下:
1.    把每个单词的首字母变为大写。
2.    把数字与字母之间用下划线字符(_)分开,使得更清晰
3.    把单词中间有多个空格的调整为1个空格。

Input

例如:
用户输入:
you and     me what  cpp2005program

Output

则程序输出:
You And Me What Cpp_2005_program

Sample Input

this is a 99cat

Sample Output

This Is A 99_cat

HINT

  第一次提交这道水题竟然WA,看了一下问题出在将所有单词首字母变为大写那部分,原因是那部分代码我直接copy的前面做过的一道题,而两道题的情况又不一样,所以一般不要copy,因为你也不知道copy的代码放到当前情况到底适不适应。

 /*
1. 把每个单词的首字母变为大写。
2. 把数字与字母之间用下划线字符(_)分开,使得更清晰
3. 把单词中间有多个空格的调整为1个空格。
*/
#include <iostream> using namespace std; int main()
{
char s[];
while(cin.getline(s,,'\n')){
//1. 把每个单词的首字母变为大写。
int i;
for(i=;s[i]!='\0';i++){
if(s[i]!=' ')
if(('a'<=s[i] && s[i]<='z')){
s[i]-=;
break;
}
else break;
}
for(i=i+;s[i]!='\0';i++){
if(s[i]==' '){
if( ('a'<=s[i+] && s[i+]<='z') && s[i+]!='\0'){
s[i+]-=;
}
}
}
//2. 把数字与字母之间用下划线字符(_)分开,使得更清晰
//3. 把单词中间有多个空格的调整为1个空格。
for(i=;s[i]!='\0';i++){
if( ''<=s[i] && s[i]<='' ){
if( ('a'<=s[i+] && s[i+]<='z') || ('A'<=s[i+] && s[i+]<='Z') )
cout<<s[i]<<'_';
else
cout<<s[i];
}
else if( ('a'<=s[i] && s[i]<='z') || ('A'<=s[i] && s[i]<='Z') ){
if( ''<=s[i+] && s[i+]<='' )
cout<<s[i]<<'_';
else
cout<<s[i];
}
else if(s[i]==' ' && s[i+]==' ')
continue;
else
cout<<s[i];
}
cout<<endl;
}
return ;
}

Freecode : www.cnblogs.com/yym2013

ytu 1304:串的简单处理(水题)的更多相关文章

  1. ytu 1301:Excel地址转换(水题,进制转换)

    Excel地址转换 Time Limit: 1 Sec  Memory Limit: 128 MBSubmit: 41  Solved: 11[Submit][Status][Web Board] D ...

  2. 2019年华南理工校赛(春季赛)--I--炒股(简单思维水题)

    水题,想想就过了 题目如下: 链接:https://ac.nowcoder.com/acm/contest/625/I来源:牛客网 攒机一时爽,一直攒机一直爽. 沉迷攒机的胡老师很快就发现,他每天只能 ...

  3. ytu 1789:n皇后问题(水题,枚举)

    n皇后问题 Time Limit: 1 Sec  Memory Limit: 64 MB  Special JudgeSubmit: 12  Solved: 3[Submit][Status][Web ...

  4. HDOJ 1008. Elevator 简单模拟水题

    Elevator Time Limit: 2000/1000 MS (Java/Others)    Memory Limit: 65536/32768 K (Java/Others)Total Su ...

  5. ytu 1940:Palindromes _easy version(水题)

    Palindromes _easy version Time Limit: 1 Sec  Memory Limit: 64 MBSubmit: 47  Solved: 27[Submit][Statu ...

  6. HDU 1840 Equations (简单数学 + 水题)(Java版)

    Equations 题目链接:http://acm.hdu.edu.cn/showproblem.php?pid=1840 ——每天在线,欢迎留言谈论. 题目大意: 给你一个一元二次方程组,a(X^2 ...

  7. 简单dp水题

    #include <bits/stdc++.h> using namespace std; #define limit (100 + 5)//防止溢出 #define INF 0x3f3f ...

  8. ytu 1041: 迭代法求平方根(水题)

    1041: 迭代法求平方根 Time Limit: 1 Sec  Memory Limit: 128 MBSubmit: 227  Solved: 146[Submit][Status][Web Bo ...

  9. ytu 1937:查找最大元素(水题)

    查找最大元素 Time Limit: 1 Sec  Memory Limit: 64 MBSubmit: 51  Solved: 23[Submit][Status][Web Board] Descr ...

随机推荐

  1. 关于updateElement接口

    1.bool UpdateGameElement(const struct_game_element& ele, gs_dbs_user_info_op_req& db_req, :: ...

  2. inux环境PHP7.0安装

    inux环境PHP7.0安装   PHP7和HHVM比较PHP7的在真实场景的性能确实已经和HHVM相当, 在一些场景甚至超过了HHVM.HHVM的运维复杂, 是多线程模型, 这就代表着如果一个线程导 ...

  3. 机器人与机器人仿真技术(zz)

    http://www.viblue.com/archives/5587.htm 一.机器人简介: 机器人(Robot)是自动执行工作的机器装置.它既可以接受人类指挥,又可以运行预先编排的程序,也可以根 ...

  4. vsftpd的安装

    好像linux下的服务的配置和文件分布都差不多, 如httpd, vsftpd, named. 都是: 在/etc/???下面进行配置???.conf, 然后在/var/???放置实际要处理的文件/目 ...

  5. Scheme笔记(1)

    (define pi 3.14159) (define radius 10) (* pi (* radius radius)) (define circumference (* 2 pi radius ...

  6. [Effective JavaScript笔记]第1条:了解使用的js版本

    1997年 正式成为国际标准,官方名称为ECMAScript. 1999年 定稿第3版ECMAScript标准(简称ES3),最广泛的js版本. 2009年 发布第5版即ES5,引入了一些新特性,标准 ...

  7. C语言课程1——Hello World

    相信大家看了第一篇文章后,都信心满满,后边咱来点实际吧,上代码,经典之作:Hello World. 首先,不知道大家用的什么工具,VC6.0(太老了,强烈建议不用),VS,或是其他~ Hello Wo ...

  8. hdu1151 二分图(无回路有向图)的最小路径覆盖 Air Raid

    欢迎参加——BestCoder周年纪念赛(高质量题目+多重奖励) Air Raid Time Limit: 2000/1000 MS (Java/Others)    Memory Limit: 65 ...

  9. mysql 多表连接

    现有表R,S如下: 笛卡尔积 select * from R,S; 结果: 注:不需要任何条件.结果为两张表函数相乘(3x3=9). 自连接 select e.empno,e.ename,m.empn ...

  10. C++代码重用——包含

    #ifndef PAIRS_H #define PAIRS_H #include <iostream> #include <valarray> template <cla ...