易截截图软件、单文件、免安装、纯绿色、仅160KB

一个简单的c游戏

13个人围成一圈,从第一个人开始顺序报号1,2,3。凡报到3者退出圈子,找出最后留在圈子中的人原来的序号
结果应该是13 可我的程序的结果是11 希望好心人帮改一下
#include <stdio.h>
#include <stdlib.h>
int onlyone(int a[])
{
int i,k = 0;
for(i = 1;i <= 13;i++)
if(a[i] == 0)
k++;
if(k > 1)
return 0;
else if(k ==1)
return 1;
}
int main()
{
int a[13] = {0};
int i = 1,k = 0;
while(!onlyone(a))
{
  if(a[i] == 0)
  k++;
  if(k == 3)
  {
  a[i] = 1;
  k = 0;
  }
  i++;
  if(i == 14)
  i = 1;
}
printf("%d",i);
system("pause");
return 0;
}


for(i = 1;i <= 13;i++)
if(a[i] == 0)
k++; (此处有a[13]出现,所以说数组越界!)
还有个问题:什么时候程序跳出while(!onlyone(a))!应该在只剩下一个人的时候,那此时i
是什么数?它是最后一位退出的人,经过i++后应为9!也就是说最后一位退出的是第八位!最后可以改为:
for(i=1;i <=13;i++)
{
          if(a[i]==0)
          {printf("%d\n",i);
          break;
          }
}


/*
13个人围成一圈,


相关问答:

execl怎么调用java程序 - C/C++ / C语言

如题,C/C++中的execl怎么调用写好的java程序,
execl("/opt/java1.5/bin/java","MyClass",NULL);
这样的不行哦。

不会.

运行java程序
找工具查看一下那个程序的命令行

搜索下:jni ......

c静态编译另一个文件夹的库函数 - C/C++ / C语言

在根目录/lib中存放一个log.c,log.h,并用下面的语句:
gcc -c log.c
ar crv liblog.a log.o
编译出一个liblog.a静态库,然后在文件夹:/testfile中创建一个test.c和testc.c,test.c中引用了testc.c中定义的方法 ......

请大家指点一下C/S结构的分页流程 - .NET技术 / C#

大家好,我是新手,刚开始接触C/S结构的程序,想要实现一个分页功能,大家有没有好点的分页控件或者程序之类的,当然源程序更好,否则说说流程也可以,小妹急啊,在线等。。。。
大家帮帮忙,谢了!

自己写呀! ......

磕求C/S源码 - Delphi / 数据库相关

现有paradox数据库使用BDE驱动,拟改为C/S版,增加网络读取数据功能。请哪位大侠,提供源码。
说句不客气的话,用paradox做C/S是自寻死路。
换一个网络数据库

因为不想动大手术,仅能共享几个文件即可。

Da ......

C# SQL 的UPDATETEXT 问题 - .NET技术 / C#

A表 有两个字段 
  id 唯一数字域
  InfoTxt text 类型
 我现在要把 id 不是14 的所有 InfoTxt字段 文本后面 都加上 'aaa' 
按下面执行下来 只有表最后一行加上了 'aaa' ......
© 2009 ej38.com All Rights Reserved. 关于E健网联系我们 | 站点地图 | 赣ICP备09004571号