【发布时间】:2019-10-14 13:47:36
【问题描述】:
在这里,我尝试使用 for 循环反转一个数字,但是当 n=1234 时,它只给出输出 432。 请解释为什么 for 循环的行为不同。
当我使用条件 while(n>0) 尝试使用 while 循环出现相同的问题时,它按预期工作并给出了所需的输出
Scanner sc=new Scanner(System.in);
int n=sc.nextInt();
int rev=0;
for(int i=1;i<=n;i++){
int temp=n%10;
n=n/10;
rev=rev*10+temp;
}
System.out.println(rev);
当 n=1234 时,预期输出为 4321,但输出为 432
【问题讨论】:
-
你试过调试你的代码吗?
-
提示:考虑打印你的中间结果,以便更好地理解你的代码在做什么。你通过创造性来学习编程。向他人寻求解释应该是你最后的手段,而不是第一个手段。
-
即使我从 0 开始,它也会给出相同的输出
-
while(n>0) 在您的情况下将是一个更好的循环条件。
-
为什么还需要
i?
标签: java