zoukankan      html  css  js  c++  java
  • 软件工程课堂练习&课下作业

    题目:返回一个整数数组中最大子数组的和。
    一、设计思路
    按顺序定义子数组的和,如果为负,则选下一位数为子数组的和,反之则两个相加为子数组的和。
    二、源代码

    package test;
    import java.util.*;

    public class Array
    {
      public static void main(String args[])
      {
        Scanner input = new Scanner(System.in);//定义并输入数组长度
        System.out.println("请输入数组长度:");
        int length = input.nextInt();

        int array[] = new int[length]; //定义并输入数组
        System.out.println("请输入数组:");
        for(int i=0;i<length;i++)
          {
            array[i] = input.nextInt();
          }

        int max = 0; //定义并初始化参数
        int sum = 0;

        for(int i=0;i<length;i++)//判断条件
          {
            if(sum<=0)
            {
              sum = array[i];
            }
            else
            {
              sum += array[i];
            }
            if(sum>max)
            {
              max = sum;
            }
          }
        System.out.println("子数组的和的最大值为:"+max);
      }
    }

    三、结果截图

    四、总结

    设计思路总体还算清晰,可是代码的实现还存在些许困难,需要同学的帮助之下才能完成,编程能力上有很大的欠缺,需要多下功夫,我会努力的。

  • 相关阅读:
    使用homebrew安装mysql
    MacOS下命令行安装神器brew
    mac Navicat 破解+汉化(亲测可用)
    eos开发(三)使用cleos命令行客户端操作EOS——关于钱包wallet和账户account
    eos开发(二)使用cleos命令行客户端操作EOS(钱包wallet基础操作)
    php职业规划
    temp
    事业随想
    系统时间错误
    加解密,token
  • 原文地址:https://www.cnblogs.com/crazy-soul/p/5369706.html
Copyright © 2011-2022 走看看