import java.util.*;
public class QiuHe
{
  public static void main(String[] args)
 { Scanner input=new Scanner(System.in);
  System.out.println("请输入一个五位整数");
   int a=0;
   a=input.nextInt();
  while (a>99999 && a<10000)
 {
   System.out.println("输入不符合规范,请重新输入");
   a=input.nextInt();
  }
   int sum=0;
   for(int i=0;i<5;i++)
   {sum+=a%10;
    a=a/10;
   }
 System.out.println("和为:"+sum);
 }
}

解决方案 »

  1.   

    你的while语句得条件写错了,你要他大于99999又要小于10000,有这个数能满足你这条件得吗?
      

  2.   

    while (a>99999 && a<10000)
     {
      System.out.println("输入不符合规范,请重新输入");
      a=input.nextInt();
      }
    这段程序有问题!
      

  3.   

    是啊,就是这个问题!我估计你想要表达的意思是:如果输入大于99999或者小于10000,就认为是不合格的,所以你应该用"||",而不是"&&"。