首页 > 其他分享 >2017-A

2017-A

时间:2023-03-24 09:22:32浏览次数:42  
标签:字符 int char && 2017 100

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;
 } 

标签:字符,int,char,&&,2017,100
From: https://www.cnblogs.com/benbenlzw/p/17245831.html

相关文章

  • COMP2017 精简指令系统
    COMP2017COMP9017Assignment2Due:11:59PMTuesday28March2023localSydneytimeThisassignmentisworth5%+30%ofyourfinalassessmentTaskDescriptionAh,......
  • P3747 [六省联考 2017] 相逢是问候
    [六省联考2017]相逢是问候P3747[六省联考2017]相逢是问候题目描述Informatikverbindetdichundmich.信息将你我连结。B君希望以维护一个长度为\(n\)的数......
  • 洛谷 P3758 [TJOI2017]可乐
    https://www.luogu.com.cn/problem/P3758给定一张图。一个机器人在1号点,每次它可以选择留在原地,沿一条边行走一次,自爆。机器人自爆后无法进行任何操作,求t时间内它所有可......
  • loj6144「2017 山东三轮集训 Day6」C
    loj6144「2017山东三轮集训Day6」C注意到修改只有位运算,容易想到将位拆开考虑。首先可以发现对某一位或上\(0\)或者是对某一位与上\(1\)是没有意义的,相当于没有操作......
  • PA 2017 Banany
    $$是夜萧索漏星光,一秋叶打漫天霜。钟响,卷地西风扫鸿芒。$$$$求索那堪路漫长,重心剖树早相忘。清唱,时空阻限又何妨?$$PA-2017Banany考虑点分树。先把点分树建出来再考虑更......
  • 「JOISC2017」门票安排
    题目点这里看题目。分析不妨先认为\(C_i=1\)。首先破环为链,则原问题等价于:你有一个长度为\(n\)的序列\(a\)和\(m\)个二元组\((l_i,r_i)\)。一开始时,\(a_i=0\)......
  • 【漏洞复现】Apache HTTPD 换行解析漏洞 (CVE-2017-15715)
    ApacheHTTPD换行解析漏洞(CVE-2017-15715)0x01漏洞描述ApacheHTTPD是一款HTTP服务器,它可以通过mod_PHP来运行PHP网页。其2.4.0~2.4.29版本中存在一个解析漏洞,在解......
  • csp201703-2
    这道题暴力能过,最离谱的是,我提交了,通过了100分,返回来看一眼代码发现我的数组只开了a[10].....这数据给的太随意了吧#include<bits/stdc++.h>usingnamespacestd;inta......
  • CCF 2017-12
    一:试题编号:2017-12-1试题名称:最小差值时间限制:1.0s内存限制:256.0MB问题描述:问题描述 给定n个数,请找出其中相差(差的绝对值)最小的两个数,输出它们的差值的绝对值。输入格式......
  • P4434 [COCI2017-2018#2] ​​Usmjeri
    知识点:lca,种类并查集新生赛原题。什么嘛,我还是长了一点手的嘛简述给定一棵\(n\)个节点的树,初始时每条边方向不确定,同时给定\(m\)组约束,第\(i\)组约束为\((a_i,......