2017-A

题目描述:

输入一个字符串,要求输出能把所有的小写字符放前面,大写字符放中间,数字放后面,并且中间用空格隔开,如果同种类字符间有不同种类的字符,输出后也要用字符隔开。

例:

输入 12abc3KF12

输出 abc KF 12 3 12

输入 rwr21r3hello666world

输出 rwr r hello world 21 3 666

题解:

#include <iostream>
#include <cstring> using namespace std;
int main()
{
string s;
cin>>s;
char s1[100];//存放小写字母
char s2[100];//存放大写字母
char s3[100];//存放数字
int n1=0,n2=0,n3=0;
for(int i=0;i<s.length();i++)
{
if(s[i]>='a' && s[i]<='z')//先判断该字符是否属于a~z
{//若属于a~z
if(i==0)//如果是输入字符串的第一个元素直接存入结果
{
s1[n1++]=s[i];
}
else //如果不是第一个元素,则需要判断前驱元素是否是同一类型的元素
{
if(s[i-1]>='a' && s[i-1]<='z')//若前驱元素是同一类型的元素
{
s1[n1++]=s[i]; // 将当前元素压入结果
}
else //若前驱元素不是同一类型的元素 ,即同种类字符间由不同种类的字符
{
s1[n1++]=' '; //则输出后也要用字符隔开
s1[n1++]=s[i]; //隔开后再将当前元素压入结果,相当于另起一段
}
}
}
if(s[i]>='A' && s[i]<='Z')
{
if(i==0)
{
s2[n2++]=s[i];
}
else
{
if(s[i-1]>='A' && s[i-1]<='Z')
{
s2[n2++]=s[i];
}
else
{
s2[n2++]=' ';
s2[n2++]=s[i];
}
}
}
if(s[i]>='0' && s[i]<='9')
{
if(i==0)
{
s3[n3++]=s[i];
}
else
{
if(s[i-1]>='0' && s[i-1]<='9')
{
s3[n3++]=s[i];
}
else
{
s3[n3++]=' ';
s3[n3++]=s[i];
}
}
}
}
for(int i=0;i<n1;i++) cout<<s1[i];
cout<<" ";
for(int i=0;i<n2;i++) cout<<s2[i];
cout<<" ";
for(int i=0;i<n3;i++) cout<<s3[i];
system("pause");
return 0;
}

2017-A的更多相关文章

  1. CI Weekly #10 | 2017 DevOps 趋势预测

    2016 年的最后几个工作日,我们对 flow.ci Android & iOS 项目做了一些优化与修复: iOS 镜像 cocoapods 版本更新: fir iOS上传插件时间问题修复: ...

  2. 猖獗的假新闻:2017年1月1日起iOS的APP必须使用HTTPS

    一.假新闻如此猖獗 刚才一位老同事 打电话问:我们公司还是用的HTTP,马上就到2017年了,提交AppStore会被拒绝,怎么办? 公司里已经有很多人问过这个问题,回答一下: HTTP还是可以正常提 ...

  3. iOS的ATS配置 - 2017年前ATS规定的适配

    苹果规定 从2017年1月1日起,新提交的 app 不允许使用NSAllowsArbitraryLoads来绕过ATS(全称:App Transport Security)的限制. 以前为了能兼容ht ...

  4. 深入研究Visual studio 2017 RC新特性

    在[Xamarin+Prism开发详解三:Visual studio 2017 RC初体验]中分享了Visual studio 2017RC的大致情况,同时也发现大家对新的Visual Studio很 ...

  5. Xamarin+Prism开发详解三:Visual studio 2017 RC初体验

    Visual studio 2017 RC出来一段时间了,最近有时间就想安装试试,随带分享一下安装使用体验. 1,卸载visual studio 2015 虽然可以同时安装visual studio ...

  6. Microsoft Visual Studio 2017 for Mac Preview 下载+安装+案例Demo

    目录: 0. 前言 1. 在线安装器 2. 安装VS 3. HelloWorld 4. ASP.NET MVC 5. 软件下载 6. 结尾 0. 前言: 工作原因,上下班背着我的雷神,一个月瘦了10斤 ...

  7. Create an offline installation of Visual Studio 2017 RC

    Create an offline installation of Visual Studio 2017 RC ‎2016‎年‎12‎月‎7‎日                             ...

  8. .NET Core 2.0版本预计于2017年春季发布

    英文原文: NET Core 2.0 Planned for Spring 2017 微软项目经理 Immo Landwerth 公布了即将推出的 .NET Core 2.0 版本的细节,该版本预计于 ...

  9. 卡巴斯基2017激活教程_卡巴斯基2017用授权文件KEY激活的方法

    原创:天诺时空 更新时间:2016-11-09   2016年9月7日,卡巴斯基2017版全新上市,卡巴斯基依旧为大家奉上满足您所有需求的安全软件产品,为不同年龄层.不同人群给予全方位保护,同时延续卡 ...

  10. 2016总结&2017计划

    2016总结 总体而言,上半年比较勤快,下半年偷懒了.下半年仔细看了Barfoot的书<state estimation for robotics>,收获很大. 2017计划 目前打算写以 ...

随机推荐

  1. ODOO13之六:Odoo 13开发之模型 – 结构化应用数据

    在本系列文章第三篇Odoo 13 开发之创建第一个 Odoo 应用中,我们概览了创建 Odoo 应用所需的所有组件.本文及接下来的一篇我们将深入到组成应用的每一层:模型层.视图层和业务逻辑层. 本文中 ...

  2. 【python基础】复杂数据类型-列表类型(元组)

    1.初识元组 列表非常适合用于存储在程序运行期间可能变化的数据集.列表是可以修改的. 然而,有时候需要创建一系列不可修改的元素,元组可以满足这种需求 python将不能修改的值称为不可变的,而不可变的 ...

  3. k8s实战案例之部署Zookeeper集群

    1.Zookeeper简介 zookeeper是一个开源的分布式协调服务,由知名互联网公司Yahoo创建,它是Chubby的开源实现:换句话讲,zookeeper是一个典型的分布式数据一致性解决方案, ...

  4. 可能是最简单最通透的Comparable和Comparator接口返回值理解

    先说 Comparator 接口,这个理解了,下一个就理解了 一.Comparator 的用法(暂不考虑0,因为0不处理) 返回-1,1交换不交换位置,如果撇开比较器的两个参数和jdk默认顺序来说,存 ...

  5. Qt6使用SeriaPortl包

    简介: 最近使用Qt6.0开发一个自己串口小工具的时候,遇到了没有QtSerialPort包的情况,一番折腾终于找到了解决方案... 一. 在系统自带的卸载更改程序中,找到Qt,点击卸载 二. 点击添 ...

  6. @Inherited元注解的使用

    @Inherited注解标记其他的注解用于指明标记的注解是可以被自动继承的. 注意:此注解只对注解标记的超类有效,对接口是无效的. 示例: 先声明两个用@Inherited标记的注解,@Name和@A ...

  7. spark连接mysql数据库

    1.安装启动检查Mysql服务.netstat -tunlp (3306) 2.spark 连接mysql驱动程序. –cp /usr/local/hive/lib/mysql-connector-j ...

  8. Linux Nacos2.2.0版本集群搭建,常见报错问题解决

    准备: 服务器,nacos,mysql,nginx,java,maven Nacos 官网:https://nacos.io 下载地址github:https://github.com/alibaba ...

  9. CF103B Cthulhu题解

    CF103B Cthulhu 点击查看题目 点击查看思路 如果 \(n < m\),那么会形成多个环. 如果 \(n > m\),那么不会形成环. 只有 \(n = m\) 时会形成环, ...

  10. P2709 小B的询问题解

    本题需要用到莫队算法 关于莫队算法 莫队算法是一种离线算法,适用于序列中统计区间特定的目标的问题. 时间复杂度通常是 \(O(n \sqrt n)\) 或更高. P2709 小B的询问 点击查看原题 ...