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*
Hint
Source
//package leslie;
import java.util.*;
public class Main {
public static void main(String[] args) {
Scanner cin=new Scanner(System.in);
char arr[]=cin.nextLine().toCharArray();
int t=0;//设置一个变量用于标记是否已输出过*,这样后面的循环就可以用for循环(不要尝试用while循环解决)
for(int i=0;i<arr.length;i++)
{
if(arr[i]>='0'&&arr[i]<='9')
{
System.out.printf("%c",arr[i]);
t=0;
}
else
{
if(t==0)
{
System.out.printf("*");
t=1;
}
}
}
System.out.println();
cin.close();
}
}