版权声明:知识不设限,可自由转载,请附上连接: https://blog.csdn.net/qq_44475551/article/details/89635490
题目
分离字符串中的不同字符单独成行输出
输入
多组测试数据,每组测试数据仅一行字符串(不含空格,字符串长度小于等于200).
输出
分离字符串中的数字、字母、特殊字(分离的时候字符顺序不要变).
输出为三行:
第一行为字母,
第二行为数字,
第三行为特殊字符.
样例输入
c5430-456cm9203,’36.g64x4/546[45v];;v5642/;;432
样例输出
ccmgxvv
5430456920336644546455642432
-,’./[];;/;;
源代码
#include <stdio.h>
#include <string.h>
int main()
{
char s[205];
while(~scanf("%s", s))
{
int n;
n = strlen(s);
char a[205] = {'s'}, b[205] = {'1'}, c[205] = {'-'};
int d = 0, e = 0, f = 0;
for(int i=0; i<n; i++)
{
if(s[i] >= 'A' && s[i] <= 'Z' || s[i] >= 'a' && s[i] <= 'z')
{
a[d] = s[i];
d++;
}
else if(s[i] >= '0' && s[i] <= '9')
{
b[e] = s[i];
e++;
}
else
{
c[f] = s[i];
f++;
}
}
printf("%s\n%s\n%s\n", a, b,c );
}
return 0;
}