1.设计思路
设置一个子数组的和temp,和一个最大值max两个变量,依次遍历数组中的数从下表为0开始,将子数组和赋值到temp中,最大值先设为数组中第一个数;
max={temp,max},如果temp<0,将temp=0;temp加一个负数会小于本身,加一个正数大于本身。最后得出的max为最大值。
2.程序代码
package 整数数组中的最大值; import java.util.*; public class ArrayMax { public static void main(String args[]) { int number[]=new int[5]; @SuppressWarnings("resource") Scanner scanner=new Scanner(System.in); int n; System.out.println("请输入你要输入的个数:"); n=scanner.nextInt(); System.out.println("请输入要输入的数:"); for(int i=0;i<n;i++) { number[i]=scanner.nextInt(); } int max=number[0]; int temp=number[0]; for(int i=1;i<5;i++) { if(temp<0) { temp=0; } temp+=number[i]; if(temp>max) { max=temp; } } System.out.println("子数组最大值为:"+max+"。"); } }
3。运行结果
.
时间: 2024-10-13 12:37:06