• 博客园logo
  • 会员
  • 众包
  • 新闻
  • 博问
  • 闪存
  • 赞助商
  • HarmonyOS
  • Chat2DB
    • 搜索
      所有博客
    • 搜索
      当前博客
  • 写随笔 我的博客 短消息 简洁模式
    用户头像
    我的博客 我的园子 账号设置 会员中心 简洁模式 ... 退出登录
    注册 登录
秘银徽章
博客园    首页    新随笔    联系   管理    订阅  订阅
软件工程课堂测试06
//软件工程课堂测试06,编程思想见下
1
#include<iostream> 2 #define num 100 3 using namespace std; 4 void main() 5 { 6 int sznum=0,sf,max,bj1,bj2; 7 int sz[num]={0}; 8 cout<<"请输入数字:"<<endl; 9 for(int i=0;i<num;i++) //输入数字 10 { 11 cin>>sz[i]; 12 sznum++; //记录输入了几个数字 13 cout<<"是否继续输入:1.是2.否"; 14 cin>>sf; 15 if(sf==2) 16 break; 17 } 18 bj1=sz[0]; //变量初始化 19 bj2=sz[0]; //变量初始化 20 max=sz[0]; //变量初始化 21 for(int i=1;i<=sznum;i++) 22 { //计算子数组中的最大和 23 bj1=bj1+sz[i]; //前i个数相加 24 if(max<bj1) //max与前i个数相加比较,取最大值 25 max=bj1; 26 if(max<bj2) //max与前i-1个数相加比较,取最大值 27 max=bj2; 28 bj2=bj1; //原来bj2是前i-1个数相加,现在bj2是前i个数相加 29 } 30 cout<<"子数组的最大和为:"<<max<<endl; 31 }

软件工程课堂测试06

编程思想:

1.先输入数字

2.统计输入数字的个数

3.计算前i个数字的和和前i-1个数字的和就行比较,取最大值

4.输出最大值

截图:

posted on 2016-04-06 18:42  秘银徽章  阅读(152)  评论(0)    收藏  举报
刷新页面返回顶部
博客园  ©  2004-2025
浙公网安备 33010602011771号 浙ICP备2021040463号-3