Caleb Sung的博客

今天也要多学习一个

C语言:解决找老鼠问题

题目来源:大工慕课 链接
作者:Caleb Sung

问题

现在有呈环形的十个老鼠洞,按顺时针方向排序分别是1~10号洞。现在从1号洞出发,走一个洞的距离到3号洞,再走两个洞的距离到5号洞,以此类推。总共这样走了一千次,在这个过程中始终没有看到老鼠,问那些洞里可能有老鼠?

参考代码

这里先设定所有洞属性为1,即有老鼠;接下来每走一步就把那个洞的值设为0,即没有老鼠。
不过题目没说第一个洞有没有老鼠,这里我默认它里面有老鼠:

#include<stdio.h>
int main()
{
    int hole[10], i, j, num;
    for(i=0;i<=9;i++)
        hole[i]=1;
    for(i=2,j=1;i<=1000;i++,j+=i)
    {
        num=j%10;
        hole[num]=0;
    }
    printf("可能有老鼠的洞有:\n");
    for(i=0;i<=9;i++)
        if (hole[i]==1)
            printf("%d号洞, ",i+1);
    printf("\b\b。");    
} 

输出结果

可能有老鼠的洞有:
1号洞, 3号洞, 6号洞, 8号洞。
阅读更多

扫码向博主提问

去开通我的Chat快问

qq_41933331

非学,无以致疑;非问,无以广识
版权声明:根据中华人民共和国著作权法,转载请标明来源,作者保留依法追究未经授权转载行为的权利 https://blog.csdn.net/qq_41933331/article/details/79945825
所属专栏: C语言入门基础
上一篇C语言:随机生成8个数排序,再输入一个数将这9个数排序
下一篇Linux入门基础 #10 使用fdisk进行磁盘管理
想对作者说点什么? 我来说一句

没有更多推荐了,返回首页

关闭
关闭