SDUT-保留整数 -

Description

输入一个字符串str1,把其中的连续非数字的字符子串换成一个‘*’,存入字符数组str2 中,所有数字字符也必须依次存入 str2 中。输出str2。

Input

输入为一行字符串str1,其中可能包含空格。字符串长度不超过80个字符。

Output

输出处理好的字符串str2。

Sample

Input 

$Ts!47&*s456  a23* +B9k

Output 

*47*456*23*9*
#include<bits/stdc++.h>
using namespace std;
char str1[81],str2[81];
int cnt;
int main()
{
    cin.getline(str1,81);
    for(int i=0; str1[i]!='\0'; i++)
    {

        if(isdigit(str1[i]))
        {
            str2[cnt++]=str1[i];
        }
        else
        {
            if(!isdigit(str1[i+1]))
            {
                continue;
            }
            str2[cnt++]='*';
        }
    }
    int n=strlen(str1);
    if(!isdigit(str1[n-1]))
    {
        printf("%s*\n",str2);
    }
    else
    {
        printf("%s\n",str2);
    }
    return 0;
}

Guess you like

Origin blog.csdn.net/m0_52226803/article/details/121062003