题目:
有 n个人围成一圈,顺序排号。从第一个人开始报数(从 1到 3报数),凡报到 3的 人退出圈子,问最后留下的是原来第几号的那位。

思路:
题目说是排成一圈,可以看成一个数组的排列。用i从下标为1的地方开始遍历这个数组(个人习惯从下标为1处开始),每当i==n+1的时候,就给他重新设置成1,这样就实现了n个人围成一圈的效果。 再就是数组的每个元素在一开始都设置成1,表示在圈中,如果要退出圈子,就给它设成0。

代码:

#include <stdio.h>
int main()
{int a[50], i, n, count, flag=0;scanf("%d", &n);count=n;for (i=1; i<=n; i++)a[i]=1;//所有人都在圈内,为1 for (i=1; ;i++){if (i==n+1)i=1;//如果i超出了n个人,让他重新回到1 if (a[i]!=0)   flag++;else   continue;if (flag%3==0){a[i]=0;count--;}if (count==1)//表示只剩下一个人在圈内 break;}for (i=1; i<=n; i++)if (a[i]!=0)printf("%d", i);//注意这里是输出i,一开始写的a[i],调试了老半天 return 0;
}

题目: 有 n个人围成一圈,顺序排号。从第一个人开始报数(从 1到 3报数),凡报到 3的 人退出圈子,问最后留下的是原来第几号的那位。(模拟)相关推荐

  1. 详细讲解C语言经典例题:有n个人围成一圈,顺序排号。从第1个人开始报数(从1到3报数),凡报到3的人退出圈子, 问最后留下的是原来第几号的那位

    有n个人围成一圈,顺序排号.从第1个人开始报数(从1到3报数),凡报到3的人退出圈子, 问最后留下的是原来第几号的那位 如题,相信很多人都和我一样,当时看到根本不知道从何下手.那么我们先不看代码,画图 ...

  2. c/c++ 有n个人围成一圈, 顺序排号。从第1个人开始报数(从1~3报数), 凡报到3的人退出圈子, 问最后留下的人原来排在第几号。

    解题思路的重要性显现出来了 比如这个题 n个人肯定是要用数组 毋庸置疑 那么报数怎么实现呢 可以设置一个循环变量 让他从0开始循环 当等于3 的时候 就归零 还有 n个人 肯定需要很多圈报数 这个很多 ...

  3. 题目:有n个人围成一圈,顺序排号,从第一个开始报数(从1到3报数),凡报到3的人退出圈子,问最后最后留下的是原来第几号的那位. 提示:用数组完成

    题目:有n个人围成一圈,顺序排号,从第一个开始报数(从1到3报数),凡报到3的人退出圈子,问最后最后留下的是原来第几号的那位. 提示:用数组完成 #include <stdio.h> in ...

  4. 有n个人,顺序排列, 并首尾相连围成一圈。从第一个人开始报数(从1到4),凡报到4的人退出圈子+扩展版本

    https://blog.csdn.net/qq_44037213/article/details/106551760?fps=1&locationNum=2 有n个人(n<=1000) ...

  5. 题目:运用指针知识,有n个人围成一圈,顺序排号。从第一个人开始报数(从1到3报数),凡报到3的人退出圈子,问最后留下的那位是原来的第几号?

    题目:运用指针知识,有n个人围成一圈,顺序排号.从第一个人开始报数(从1到3报数),凡报到3的人退出圈子,问最后留下的那位是原来的第几号? 一.需求分析 求出从未报到3的人的编号 二.思维节点 1.如 ...

  6. ACMNO.38 C语言-报数 有n人围成一圈,顺序排号。从第1个人开始报数(从1到3报数),凡报到3的人退出圈子,问最后留下的是原来的第几号的那位。

    题目描述 有n人围成一圈,顺序排号. 从第1个人开始报数(从1到3报数),凡报到3的人退出圈子.`在这里插入代码片` 问最后留下的是原来的第几号的那位. 输入 初始人数n 输出 最后一人的初始编号 样 ...

  7. python n个人围成一圈,Python练习代码实例69-有n个人围成一圈,顺序排号。从第一个人开始报数(从1到3报数),凡报到3的人退出圈子,问最后留下的...

    Python 练习实例69 题目:有n个人围成一圈,顺序排号.从第一个人开始报数(从1到3报数),凡报到3的人退出圈子,问最后留下的是原来第几号的那位. 程序分析:无. 程序源代码:#!/usr/bi ...

  8. (C语言)有n人围成一圈,顺序排号。从第1个人开始报数(从1到3报数),凡报到3的人退出圈子,问最后留下的是原来的第几号的那位。

    题目描述 有n人围成一圈,顺序排号.从第1个人开始报数(从1到3报数),凡报到3的人退出圈子,问最后留下的是原来的第几号的那位. 输入 初始人数n 输出 最后一人的初始编号 样例输入 3 样例输出 2 ...

  9. 约瑟夫环问题:有n个人围成一圈,顺序排号。从第一个人开始报数(从1到3报数),凡报到3的人退出圈子,问最后留下的是原来第几号的那位。...

    首先,我最大的学习来源不是百度而是我群友~~在这里表白一波我热爱学习的群友们! 然后今天群里突然有人提出了题目的这个问题: 有n个人围成一圈,顺序排号.从第一个人开始报数(从1到3报数),凡报到3的人 ...

最新文章

  1. 关于c语言程序开发过程 下面说法错误的是,c语言笔试真题
  2. 【正一专栏】西班牙国家德比不再激情四射可更让人不舍
  3. 重磅推荐!大咖解读,重新定义 B2B 获客转化,引爆企业营销
  4. Windows/Linux安装python2.7,pycharm和pandas——《利用Python进行数据分析》
  5. Netty工作笔记0068---Protobuf机制简述
  6. Asp.Net把word文件转换为html文件
  7. 小程序canvas转base64方法 使用upng库 亲测没问题
  8. 雪人(snowman)
  9. html标点符号在首页,HTML常用的特殊符号前端使用的标点符号
  10. SQL AND OR 运算符的用法
  11. Mockplus: 让小白产品经理上手就用的原型图设计工具
  12. IT30: IT人创业项目路演!!!
  13. 机器学习---sklearn
  14. 三星a52屏幕刷新率设置方法分享
  15. 数模分析第五天---判别分析
  16. 初学者入门HTML2
  17. 链表的学习 day2
  18. wordpress插件_5个最佳WordPress插件来处理您网站上的字体
  19. OpenGL编程指南(第八版)第一个渲染三角形案例代码在win8双显卡电脑VS2015中运行方法总结
  20. Angular---学生信息管理系统

热门文章

  1. 网络:抓包分析dns的原理
  2. 单位网站老是被劫持跳转到菠菜网站怎么办
  3. 初等数论的一部分结论
  4. secret-performance-desktop - 基于javafx的桌面个性化工具
  5. 剑灵M双端一键端开服端
  6. javascript中getmonth()的问题
  7. ca加密是什么情况_让我们进行加密:为什么要创建一个免费,自动化和开放的CA?...
  8. 史上最著名的10个思想实验(思想解放运动)
  9. MyEclipse ci8破解教程,图文教你一步一步走向成功
  10. SAP消耗性物料采购前台操作及后台配置