左边的更好。
小tips:选中内容,按tap,可后缩。
switch和if,else和while跟c语言一样。
package input;
import java.util.Scanner;
public class Main{
public static void main(String[] args) {
int balance = 0;
while(true)
{
Scanner in=new Scanner(System.in);
int amount=in.nextInt();
balance=balance+amount;//这里累加,直到balance大于或等于10
if(balance>=10)
{
System.out.println((balance-10));
balance=0;
}
}
}
}
计算位数
方法:人数一个数是一位一位数的,我们可能习惯从左往右数,我们可以用取余(%)实现这个操作,342%100=42,42%10=2。但是这个取余的数一直再变,所以我们可以从右往左数,利用(/)实现,342/10=34;34/10=4.这样的话我们可以用循环实现它。
package input;
import java.util.Scanner;
public class Main{
public static void main(String[] args) {
int balance = 0;
Scanner in=new Scanner(System.in);
int number=in.nextInt();
int count=0;
while(number>0)//当number<=10时,number/10=0,所以循环退出的条件是number>0
{
number=number/10;
count++;
}
System.out.println(count);
}
}
细节:while(条件):第一次执行到这个语句的时候,是先判断条件,再执行,若条件不满足,直接不执行循环。
number | count | 执行过程 | ||
352 | 0 | 352/10=52 | count=0+1 | |
35 | 1 | 52/10=2 | count=0+1+1 | |
3 | 2 | 2/10=0 | count=0+1+1+1 | |
0 | 3 | 不执行 | 输出count |