输出任意整数的每一位
非递归方式
import java.util.*;
public class Exe{
public static void main(String[] args){
Scanner input = new Scanner(System.in);
System.out.println("请输入一个整数:");
int count = input.nextInt();
int m,i=1,j,t,k;
m=count;
while(m>9){ //判断n是几位数
m=m/10;
i++;
}
if(count>9)
System.out.println(count+"是"+i+"位数");
if(count<10){ //顺序输出
System.out.println(count+"是一位数:"+count);//个位数被10整除都为0,
}
else{
for(k=i;k>0;k--){
m=count;t=1;
for(j=0;j<k-1;j++){
t*=10;
}
m=m/t;m=m%10;
System.out.print(m+" ");
}
}
}
}
运行结果:
递归方式
import java.util.*;
public class Exe1{
public static void func(int n){
if(n>9){
func(n/10);
}
System.out.println(n%10);
}
public static void main(String[] args){
Scanner input = new Scanner(System.in);
System.out.println("请输入一个整数:");
int n = input.nextInt();
func(n);
}
}
运行结果:
输出一个整数的每一位
import java.util.Scanner;
public class Test {
public static void fun(int num){
if(num>9){
fun(num/10);
}
System.out.println(num%10);
}
public static void main(String[] args) {
Scanner scan = new Scanner(System.in);
System.out.println("请输入数字:");
int value = scan.nextInt();
fun(value);
}
}
执行结果:
以上为个人经验,希望能给大家一个参考,也希望大家多多支持编程网。