首先将代码放在前边

#include <iostream>
using namespace std;// 函数king:猴子选大王
// 参数:a-猴子数组n-1个猴子分别占据下标为~n-1的位置,n-数组长度
// 返回值:新猴王的下标序号
int king(int a[], int n);int main()
{int n, a[1000], i;     // 定义变量及数组,n-猴子数量,a-猴子数组cin >> n;     // 输入猴子数量,n>0// 初始化猴子数组,n 个猴子分别占据 n 个位置a[0] = 0; // 0号位置没有猴子for(i = 1;i <= n; i++)a[i] = i;// 选大王啦i = king(a, n );cout << i << "号猴子是大王。" << endl;return 0;
}int king(int a[], int n)
{// 请在此添加代码,实现函数king/********** Begin *********/int num=n,nx=1,m=1;while(num>1){for(int i=1;i<=3;i++){while(a[nx]==0){nx++;if (nx==n+1)nx=1;}if(i==3){a[nx]=0;num--;}else {nx++;}if (nx==n+1)nx=1;}}for (int j=1;j<=n;j++){if(a[j]!=0){return j;}}

本题利用循环可以解决这个问题,判断依据为只剩一个猴子,也就是只有一个数不为0时即可。但本人在练习过程中,最初开始没加上:if (nx==n+1)nx=1;  导致在下一次循环开始判断a[nx]==0时出了错误。比如有5个猴子,当nx=6时进行判断a[nx]==0出错,a[nx]没有赋值,个人一开始以为没赋值就是0,在那个while判断中可以进行出来,但结果不是。

我编了一小段代码来进行检验

#include <iostream>
using namespace std;
int main() {int a[10];for (int i = 0; i <= 5; i++) {cin >> a[i];}for (int i = 0; i < 10; i++) {cout << a[i] << " ";}return 0;
}

输入为0 1 2 3 4 5

输出为:0 1 2 3 4 5 -858993460 -858993460 -858993460 -858993460

我个人认为这是一个值得注意的点。

c++实训 选猴子当大王相关推荐

  1. 程序员团队名称和口号_济南市大学生双创孵化平台创业菁英实训营2019年第五期【最具人气创业团队】由你来选!...

    2019年9月14日,济南市大学生双创孵化平台创业菁英实训营2019年第五期在山东大学(中心校区)就业创业指导中心第一报告厅开营,本次实训营共为期6天,学员们都是来自山东大学.山东财经大学.济南大学. ...

  2. 实验心得html,心得体会 html实训心得.doc

    html实训心得 html实训心得 html实训心得 实训总结 实训时间:xx.12.3xx.12.14 实训地点:淮安软件园 实训名称:网页设计 学生姓名: 所在院校:淮阴师范学院数科院0904班 ...

  3. CC++数组实训(国防科大)

    第1关:销售波动统计 100 任务要求 参考答案 评论472 任务描述 相关知识 一维数组 数组元素的访问 数组的初始化 数组的遍历 编程要求 测试说明 任务描述 本关任务:假定有一组数据记录着卖场每 ...

  4. mq系列传感器的程序_深圳现代通信系列实训系统

    深圳现代通信系列实训系统 ejsnb5p 深圳现代通信系列实训系统 因为考虑到机箱的抗腐蚀.导电.导热等的内部要求,我们的机箱减震系统全部采用金属材料制成,这比起用橡胶材料做减震不但能达到上述要求,还 ...

  5. python实训项目-黑马程序员上海校区Python21期Django项目实训

    黑马程序员上海中心 月薪一万只是起点 关注 晚上十点,一名名Python学生正在酣畅淋漓地撸代码,手指不间断地敲击着键盘,发出机械而清脆的声音. 各个小组在经过为期4天的django项目小组开发,终于 ...

  6. 计算机综合应用能力实总结,计算机综合应用能力实训报告总结.doc

    计算机综合应用能力实训报 告 作者: 学院:四川广播电视大学 专业:建筑施工与管理 年级:16 秋 学号: 课程设计实训目的和任务: 1.?掌握正投影法的基本原理及其应用和齿轮啮合画法 2.?绘制和阅 ...

  7. Bootstrap4+MySQL前后端综合实训-Day10-AM【实训汇报-下午返校、项目代码(7个包+7个Html页面)】

    [Bootstrap4前端框架+MySQL数据库]前后端综合实训[10天课程 博客汇总表 详细笔记][附:实训所有代码] 目录 实训汇报 数据库--所有SQL语句 工程文件展示 代码 ①package ...

  8. Bootstrap4+MySQL前后端综合实训-Day07-PM【用户信息管理页面——功能展示(分页显示数据、添加用户、批量删除用户、编辑用户信息)、servlet项目代码整理汇总】

    [Bootstrap4前端框架+MySQL数据库]前后端综合实训[10天课程 博客汇总表 详细笔记][附:实训所有代码] 目   录 页面展示 分页显示数据 添加用户信息 (单个/批量)删除用户 编辑 ...

  9. Bootstrap4+MySQL前后端综合实训-Day07-AM【ajax局部刷新——(单个/批量)删除用户按钮的实现、更新用户信息按钮的实现】

    [Bootstrap4前端框架+MySQL数据库]前后端综合实训[10天课程 博客汇总表 详细笔记][附:实训所有代码] 目   录 (单个/批量)删除用户按钮的实现.更新用户信息按钮的实现--展示 ...

最新文章

  1. cpio用法详细说明
  2. git学习之通俗易懂篇(一)
  3. 标准10进制公制度量系统中 倍率关系 大全
  4. java中的等待_Java中更好的等待语法
  5. jython语法入门
  6. 二维码生成(js实现)
  7. Reciprocal Learning Networks for Human Trajectory Prediction
  8. font-spider压缩web font字体
  9. 概率密度求解定理_从贝叶斯定理到概率分布:综述概率论基本定义
  10. 计算机文化基础课程实验,计算机文化基础课程实验.doc
  11. Python开发mysql和mongo 连接类
  12. (数字IC)低功耗设计入门(二)——功耗的分析+Comments
  13. Android蓝牙调试助手
  14. 新isometric 视角游戏场景系统
  15. 正好股票简述题材股能否会全面开花
  16. 【windows】Xshell使用
  17. AutoCAD 2014 新特性概览
  18. UAF42滤波器/低通/高通/带通 滤波器 原理图/PCB设计 调试注意事项
  19. ffmpeg常用滤镜命令
  20. struts2_day02 Demo代码

热门文章

  1. 查看电脑已连接无限的无限密码
  2. Transformers库安装报错
  3. cv2.read()函数
  4. c语言自动填表chrome网页,教你设置Chrome浏览器里的自动填表功能
  5. mysql中update和limit_在MySQL中可以将UPDATE查询与LIMIT一起使用吗?
  6. 方舟进化私服找不到服务器,方舟生存进化私服怎么设置 私人服务器设置方法分享...
  7. 战地五自定义服务器在哪里,《战地5》推出自定义私人服务器!基础类型免费开放...
  8. app.json: 未找到 [“pages“][2] 对应的 pages/goods_list/index.wxml 文件的问题解决办法
  9. 38、程序中的三国天下
  10. 深夜,我常逛的几个网站。