Java练习 SDUT-1171_保留整数

C语言实验——保留整数

Time Limit: 1000 ms Memory Limit: 65536 KiB

Problem Description

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

Input

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

Output

输出处理好的字符串str2。

Sample Input

$Ts!47&*s456 a23* +B9k

Sample Output

*47*456*23*9*

可以定义一个标记,遇到非数字时候如果标记了则说明这段字符串已经转换成‘’,否则转化成‘’,标记。

import java.util.*;

public class Main {

    public static void main(String[] args) {
        Scanner cin = new Scanner(System.in);
        int f,i,num;
        String s;
        char a[] = new char[85];
        f = 0;
        num = 0;
        s = cin.nextLine();
        for(i=0;i<s.length();i++)
        {
            if(s.charAt(i)>='0'&&s.charAt(i)<='9')
            {
                a[num++] = s.charAt(i);
                f = 0;
            }
            else
                if(f==0)
                {
                    a[num++] = '*';
                    f = 1;
                }
        }
        for(i=0;i<num;i++)
            System.out.print(a[i]);
        System.out.println();
        cin.close();
    }
}

猜你喜欢

转载自www.cnblogs.com/luoxiaoyi/p/9711141.html