while循环在if语句中

时间:2014-10-27 14:35:56

标签: java loops for-loop while-loop

我必须显示"大于10"如果用户输入的数字大于10且"小于10"七次,如果用户输入的数字小于10.我能够得到"小于10"显示,但我很难接受下一步做什么。

public static void main(String args[])
{
    Scanner sc = new Scanner(System.in);
    int num;
    int i = 0;

    System.out.print("Please enter a number: ");
    num = sc.nextInt();

    if(num < 10)
    {
        while(i < 7)
        {
            System.out.println("Less than 10");
            i++;
        }
    }

我知道我用计数器变量搞砸了某个地方&#39; i&#39;但是我一直在看这个,我的大脑都在炒。有谁能协助解决这个问题?还有,是的。我只限于if语句和while循环。

6 个答案:

答案 0 :(得分:2)

你将重复你所做的过程&#34;少于&#34;但是对于&#34;大于&#34;。创建另一个if语句,检查它是否大于10,然后进入while循环4次迭代。

无需重置i,因为如果输入大于10,它就不会重复。

答案 1 :(得分:2)

使用其他&#34;如果&#34; (因为你更喜欢只使用if)结构大于10.对于给定的输入,它只输入一个if结构。 (您还可以选择使用&#34;否则,如果&#34;)

public static void main(String args[])
{
    Scanner sc = new Scanner(System.in);
    int num;
    int i = 0;

    System.out.print("Please enter a number: ");
    num = sc.nextInt();

    if(num < 10)
    {
        while(i < 7)
        {
            System.out.println("Less than 10");
            i++;
        }
    }

    if(num>10)
    {
        while(i < 4)
        {
            System.out.println("greater than 10");
            i++;
        }
    }

}

答案 2 :(得分:1)

尝试添加else语句:

public static void main(String args[])
{
   Scanner sc = new Scanner(System.in);
   int num;
   int i = 0;

   System.out.print("Please enter a number: ");
   num = sc.nextInt();

   if(num < 10)
   {
       while(i < 7)
       {
           System.out.println("Less than 10");
           i++;
       }
   }
   else if(num > 10)
   {
       while(i < 4)
       {
           System.out.println("Less than 10");
           i++;
       }
   }
}

答案 3 :(得分:0)

if (num < 10)
{
  for (int i = 0; i < 4; i++)
  { 
      System.out.println("Less than 10");
  }
}
else if (num > 10)

{
  for (int i = 0; i < 7; i++) 
  {
      System.out.println("More then 10");
  }
}

现在翻译:

for (int i=0; i<N; i++) { blabla; }

{ int i=0; while (i<N) { blabla; i++ } }

答案 4 :(得分:0)

我更喜欢倒计数目标迭代,因为它使代码比试图记住为什么某些东西更容易。 7或者&lt; 4。

if(num < 10)
{
    i = 7;

    while(i > 0)
    {
        System.out.println("Less than 10");
        i--;
    }
}
else if( num > 10)
{
    i = 4;

    while( i > 0 )
    {
        System.out.println("Greater than 10");
        i--;
    }
}

答案 5 :(得分:0)

你必须添加一个else if语句才能捕获第二个条件

   if(num < 10){
      while(i < 7){
        System.out.println("Less than 10");
        i++;
      }
   }else /*if(num >= 10)*/{ // the commented section is optional
      if(num > 10){
        while(i < 4){
          System.out.println("Greater than 10");
          i++;
        }
      }


   }
相关问题