来源:学生作业帮 编辑:作业帮 分类:综合作业 时间:2021/05/20 00:22:21

C语言 有n个人围成一圈,按顺序从1到n编号.从第一个人开始报数,报数3的人退出圈子

有n个人围成一圈,按顺序从1到n编号.从第一个人开始报数,报数3的人退出圈子,下一个人从1开始重新报数,报数3的人退出圈子.如此循环,直到留下最后一个人.问留下来的人的编号.

【输入形式】

考虑如下两种情况:

如果n超出“n must be a natural number less than 10000”,则打印“n is out of range of valid values.”;其中n应该用如上输入的具体的n数值代替;换行;

如果n是有效范围的数值,则打印“Last No.is:”;然后直接在冒号后面输出最后留下来的人的编号;换行;

【运行时的输入输出样例1】(下划线部分表示输入)

Input n(n must be a natural number less than 10000):5

Last No.is:4

【运行时的输入输出样例2】(下划线部分表示输入)

Input n(n must be a natural number less than 10000):100000

100000 is out of range of valid values.

我的程序为什么死循环啊.刚学指针,求改正,

#include

#define N 9999

int main()

{

\x05int n,a[N],*p,i=0,out=0,count=0;

\x05printf("Input n(n must be a natural number less than 10000):");

\x05scanf("%d",&n);

\x05if(n>=10000)

\x05\x05printf("n is out of range of valid values.");

\x05else

\x05{

\x05\x05for(i=0;i

#include

#define N 9999

int main()

{

int n,a[N],*p,i=0,out=0,count=0;

printf("Input n(n must be a natural number less than 10000):");

scanf("%d",&n);

if(n>=10000)

printf("n is out of range of valid values.");改为printf("%d is out of range of valid values.",n);

else

{

for(i=0;i

再问: 我重新根据你的改了下,还是死循环,逐步调试后,if(*p!=0)这个,全部被跳过了... 可是明明p是指向a[]的啊...然后就死循环了.. 还有那个for(;;)是什么意思,没有判断等语句,不是等于没有用么?.

再答: 确实不行,因为*p==0的情况没有处理,这样遇到一个*p==0就一直死循环了 至于那个for循环的判断语句在循环里面,就是那个break;也可以用while(1)来代替 把p=a;改为p=&a[1];后面循环写成下面这样看看 while(out!=n-1) { while(1) { if(*p!=0) count++; if(p==&a[n]) p=&a[1]; else p++; if(count==3) { if(p==&a[1]) a[n]=0; else p--; out++; //在这儿家加上printf("%d->",*p);就可以把顺序打出来了 *p=0; break; } }结束while(1) count=0; }结束while(out!=n-1) for(i=1;i

c语言有n个人围成一圈用指针,C语言 有n个人围成一圈,按顺序从1到n编号.从第一个人开始报数,报数3的人退出圈子...相关推荐

  1. 有n个人围成一圈,顺序排号,从第一个人开始报数(1-3报数),凡是报数为3的人退出圈子,问最后留下的人原来的编号是多少?

    有n个人围成一圈,顺序排号,从第一个人开始报数(1-3报数),凡是报数为3的人退出圈子,问最后留下的人原来的编号是多少? 花了半个下午搞出来的代码,调试了一会,一切正常,感觉还不错! '''解题思路: ...

  2. 1056: 约瑟夫问题【n人围成一圈,报数为3的人退出圈子,问最后留下的人原来的编号。】

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

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

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

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

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

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

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

  6. 算法训练 - 筛选号码 (有n个人围成一圈,顺序排号(编号为1到n)。从第1个人开始报数(从1到3报数),凡报到3的人退出圈子。从下一个人开始继续报数,直到剩下最后一个人,游戏结束。)

    问题描述 有n个人围成一圈,顺序排号(编号为1到n).从第1个人开始报数(从1到3报数),凡报到3的人退出圈子.从下一个人开始继续报数,直到剩下最后一个人,游戏结束. 问最后留下的是原来第几号的那位. ...

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

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

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

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

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

    C++程序设计(第三版) 谭浩强 习题6.5 个人设计 习题 6.5 有n个人围成一圈,顺序排号.从第1个人开始报数(从1~3报数),凡报到3的人退出圈子,问最后留下的人原来排在第几号. 代码块: # ...

最新文章

  1. PostgreSQL 客户端乱码问题
  2. 一个高效的定时任务系统
  3. 神策数据荣登《中国企业家》“未来之星”榜单
  4. Linux系统下对flash的测试方法
  5. 记一个bug定位与修复过程
  6. 在Windows Mobile模拟器(Emulator)建立网络连接
  7. tomee_Apache TomEE + JMS。 从未如此简单。
  8. 织梦dedecms的框架的Webshell
  9. java 8 list和数组之间的相互转换
  10. 《操作系统真象还原》-阅读笔记(下)
  11. java .do是什么_为什么Java Web应用程序使用.do扩展名?它从哪里来的?
  12. 职场中几个最忌讳的行为模式。
  13. python代码写好了怎么运行-python代码是怎样运行的
  14. MD5介绍与MD5加密的C++实现
  15. 性能测试学习笔记-如何管理loadrunner的临时文件
  16. python之HTML文件转PDF文件,python之把HTML文件转换成PDF格式文档
  17. AVAudioPlayer音频播放器—IOS开发
  18. 2017年3月4月无人机航空摄影总结
  19. 使用wireshark分析HTTPS数据包
  20. H5纯静态页面分享到微信朋友圈带图片显示

热门文章

  1. 安装YApi 接口管理平台
  2. sql注入预防 [ 光影人像 东海陈光剑 的博客 ]
  3. 4.3_deferred-init
  4. openwrt广告屏蔽大师修复补丁luci-app-adbyby plus + lite
  5. 键盘按键名称及HID扫描码及VK虚拟键码对照表
  6. 饥荒服务器账号问题,求救,游侠平台的 饥荒服务器问题 请教高手指教下
  7. Pandas读取数据
  8. mysql连接错误state 08S01
  9. jvm(17)垃圾回收器
  10. 使用cef3开发的浏览器不支持flash问题的解决