我正在为我的课程编写一个程序,其中必须使用for循环从键盘上获取两个数字。然后,程序应将第一个数字提高到第二个数字的幂。使用for循环进行计算。我收到错误消息inum3尚未初始化(我理解是因为循环可能永远不会进入),但我无法弄清楚如何使它工作。第25和28行是具体的。

import javax.swing.*;


  public class Loop2
{
  public static void main(String[] args)
  {


    int inum1, inum2, inum3, count;
    String str;

    str = JOptionPane.showInputDialog("Please Enter a Numer");
    inum1 = Integer.parseInt(str);

    str = JOptionPane.showInputDialog("Please Enter a Numer");
    inum2 = Integer.parseInt(str);


    for (count = 1; count == inum2; count+=1)
    {
     inum3 = inum3 * inum1;
    }

     JOptionPane.showMessageDialog(null, String.format ("%s to the power of %s = %s", inum1,inum2, inum3), "The Odd numbers up to" + inum1,JOptionPane.INFORMATION_MESSAGE);
}//main
  }// public

最佳答案

您需要初始化变量inum3。就目前而言,当您的程序尝试执行时

inum3 = inum3 * inum1;

inum3没有值,所以它不能进行乘法运算。

我想您希望在这种情况下为1。

所以代替

int inum1, inum2, inum3, count;

你可以做

int inum1, inum2, inum3 = 1, count;

07-24 20:32