要求循环输入一个数,判断是否为回文数

来源:互联网 发布:淘宝视觉营销 编辑:程序博客网 时间:2024/05/19 03:42



import java.util.Scanner;


public class HuiWenShu {


public static void main(String[] args) {


Scanner input = new Scanner(System.in);


char c = 'y';                           

                                                                                                   //初始化c为y,为下面的循环做好准备

while(c == 'y'){


while(c == 'y'){


         System.out.println("请随意输入一个大于三位的奇位数"); 

                                                                                                      //回文数属于奇位数且位数大于3

         int n = input.nextInt(); 


         System.out.println("该奇位数的位数为:");  

                                                                                    //确定回文数的位数,然后把每一位都存到数组里

         int m =  input.nextInt();        

            

         int[] a = new int[m];       

                 

         m=m-1;


         do{

  a[m]= n%10;    

                                                                                                                          //从个位开始存入数组

     n = n/10;


     m--;


  }while(m>=0);    

                                        

          System.out.println("请再次确定该数的位数"); 

                                                                                            // 因为之前经历了循环,m的值已经发生了变化,因此要重新初始化m

          m =  input.nextInt();


          m = m-1;      

                                                                                               //因为数组的下表问题,所以这里m值要减去1

         if(a[m] == a[m-4]&&a[m-1] == a[m-3]){


        System.out.println("该数为回文数"); 


         }else{


        System.out.println("该数不是回文数"); 


         }


         System.out.println("是否继续(y/n):");


                   c = input.next().charAt(0);

}


}
System.out.println("谢谢使用");
}
}
0 0