当前位置: 首页 > 知识库问答 >
问题:

我想在最后一行打印ainput,它应该与应答JAVA数组形成一个求和解决方案

漆雕成弘
2023-03-14

我在打印底部的所有数组时遇到了麻烦。

源代码:

import java.util.*;
public class Main {
   public static void main(String[] args)
   {
     Scanner x = new Scanner (System.in);
     System.out.print("Enter the number of bills: ");
     int numbills = x.nextInt();
     
     int myArray[]=new int[numbills];
     int sum = 0;

     for(int i = 0; i<myArray.length;i++)
      {
         System.out.print("Bill #" +(i+1)+": ");
         myArray[i]=x.nextInt();
         sum = sum+myArray[i];

         if (i<myArray.length-1)
         {
            
            System.out.print(myArray[i]);
            System.out.print("+ ");
         }
      }
      
    
      System.out.print(" = "+sum);
   
   }      
}

产出:

Enter the number of bills: 2
Bill #1: 100
100+ Bill #2: 200
 = 300

可能的输出:

Enter the number of bills: 2
Bill #1: 100
Bill #2: 200
100 + 200 = 300

共有1个答案

华献
2023-03-14

问题是您正在接受输入并在相同的for循环中打印它。
您可以使用2个for循环(一个用于输入,一个用于输出)。
或者您可以将其存储在同一个循环中的字符串中,并在循环结束后打印。

String sumstr = "";
for(int i = 0; i<myArray.length;i++)
{
   System.out.print("Bill #" +(i+1)+": ");
   myArray[i]=x.nextInt();
   sum = sum+myArray[i];

   if (i>0)
   {
       sumstr = sumstr + "+";
   }
   sumstr = sumstr + myArray[i];
}
System.out.print(sumstr + " = "+sum);
 类似资料:
  • 问题内容: 我正在尝试制作一个程序,该程序需要用户输入诸如三角形应该多长时间及其方向。我的问题是,在我运行该程序后,它会继续向程序中添加更多的数字。 例如 我的代码: 问题答案: 你有。对于while循环的每个循环,这将继续将输入添加到变量中。您可能想要的只是。 要使其在每次迭代中再次打印出您的第一个提示,只需将您的调用放入while循环内即可。(它也必须先出现,以便 在 输入输入 之前 显示提示

  • 令我惊讶的是,它通过了所有的测试用例。有人能给我解释一下这个逻辑吗?

  • 我试图用os.path.getsize得到一个文件的大小,但它以字节的形式打印出来,我想以MB的形式打印出来,有什么解决方案吗?代码:

  • 问题内容: 因此,假设我有一个大小为10的数组,索引范围为0到9。我在其中添加了一堆元素,并停止在索引6处添加。因此,使用array.length,我可以知道数组的大小为10,但是,如何找到哪个索引包含最后一个值,之后又为空?我是否想进行循环并在index == null处停止? 我通过创建一个动态数组来模拟arraylist,该数组在大小已满时会增长。 Arg,忘了告诉大家,如果数组为int,则

  • 我一直在练习算法问题,我遇到了这个问题。 给定一个数组(+VE和-VE),我必须找到一个连续的子数组,这样,和可以被任意数K整除,并且该子数组可能是最大和。对于 和,可被k整除的最大和子数组是 ,目前我所能想到的是,每个元素都有两种可能,要么包含在目标子数组中,要么不包含在目标子数组中。但这将是一个指数算法。 编辑:是否有可能在线性时间内解决这个问题。请帮忙

  • 它给出了一个错误: 无效语法:打印srt([5,2,4,1,3])