java while循环定义一个正整数如:1205 统计它的各位数字中零的个数,并求各位数字中的最大者。
时间: 2024-05-06 21:16:51 浏览: 7
可以使用以下代码实现:
```java
int num = 1205;
int countZero = 0;
int maxDigit = 0;
while(num > 0) {
int digit = num % 10; // 取个位数
if(digit == 0) {
countZero++;
}
if(digit > maxDigit) {
maxDigit = digit;
}
num /= 10; // 去掉个位数
}
System.out.println("零的个数:" + countZero);
System.out.println("最大的数字:" + maxDigit);
```
输出结果为:
```
零的个数:1
最大的数字:5
```
相关问题
while循环定义一个正整数如:1205 统计它的各位数字中零的个数,并求各位数字中的最大者。
可以通过循环遍历每一位数字,来统计零的个数和求解最大值。
具体实现如下:
```
num = 1205
count_zero = 0
max_digit = 0
while num > 0:
digit = num % 10 # 取出个位数字
if digit == 0:
count_zero += 1
if digit > max_digit:
max_digit = digit
num = num // 10 # 把个位数字去掉,继续处理下一位数字
print("零的个数为:", count_zero)
print("最大值为:", max_digit)
```
输出结果为:
```
零的个数为: 1
最大值为: 5
```
java定义一个正整数如:1205 统计它的各位数字中零的个数,并求各位数字中的最大者。
可以按照以下步骤实现:
1. 将该正整数转换为字符串,方便遍历各位数字。
2. 使用循环遍历字符串,统计其中零的个数,并找到其中的最大数字。
3. 输出结果。
下面是代码示例:
```
public static void main(String[] args) {
int num = 1205;
String strNum = Integer.toString(num); // 将整数转换为字符串
int zeroCount = 0; // 统计零的个数
int maxDigit = 0; // 最大数字
for (int i = 0; i < strNum.length(); i++) {
char ch = strNum.charAt(i);
if (ch == '0') {
zeroCount++;
} else {
int digit = Character.digit(ch, 10);
if (digit > maxDigit) {
maxDigit = digit;
}
}
}
System.out.println("零的个数为:" + zeroCount);
System.out.println("最大数字为:" + maxDigit);
}
```
输出结果为:
```
零的个数为:1
最大数字为:5
```