| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 1620 人关注过本帖
标题:一道有趣的编程题,大家都来做一做撒
取消只看楼主 加入收藏
blosaa
Rank: 1
等 级:新手上路
帖 子:26
专家分:0
注 册:2006-10-17
收藏
 问题点数:0 回复次数:2 
一道有趣的编程题,大家都来做一做撒
将班里的 n 个人围成一圈,顺序编号。从第一个人开始报数(从 1 到 3 报数),凡报到3的人退出圈子,然后从下一个人重新开始,最后留下的那个人就被选为班长。请问按照这个规则,选出的班长是原来编号为第几号的那位.
搜索更多相关主题的帖子: 编程 
2007-10-21 20:38
blosaa
Rank: 1
等 级:新手上路
帖 子:26
专家分:0
注 册:2006-10-17
收藏
得分:0 
看别人做的有什么意思撒,自己做才过瘾,我做了一下,大家看看对不对撒???????

#include<stdio.h>

void main()
{
int i,n,a[100],m,j,k;

printf("请输入全班的人数:");
scanf("%d",&n);
k=n;
for(j=0;j<n;j++)
{
a[j]=j+1;
}
k=0; //要淘汰的计数器
m=0; //1~3
i=0;
while(k<n-1)
{
if(a[i]!=0)
{
m++;


}
if(m==3)
{
a[i]=0;
k++;
m=0;

}
i++;
if(i==n)
{
i=0;
}
}





for(i=0;i<n;i++)
{
if(a[i]!=0)
{
printf("%3d",a[i]);
}

}
printf("\n");
}
2007-10-21 21:06
blosaa
Rank: 1
等 级:新手上路
帖 子:26
专家分:0
注 册:2006-10-17
收藏
得分:0 
用的是环,比我那个简单!!!!!!!
2007-10-22 09:22
快速回复:一道有趣的编程题,大家都来做一做撒
数据加载中...
 
   



关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.012254 second(s), 8 queries.
Copyright©2004-2024, BCCN.NET, All Rights Reserved