美文网首页
天花板编程手把手计划-第一期-第三天-打卡

天花板编程手把手计划-第一期-第三天-打卡

作者: 4644f2f5191a | 来源:发表于2017-04-25 20:36 被阅读0次

题目

把一个硬币抛5次,打印出所有可能出现的情况。1表示正面,0表示背面。比如:

全正面

1 1 1 1 1

全背面

0 0 0 0 0

解题思路

只想到转换成二进制来遍历

源码

#include <stdio.h>
#define MAX 5
int print(int num)
{
    int i=num;
    int arr[MAX]={0};
    int k=MAX;
    while(i!=0)
    {
        arr[k-1]=i%2;
        i=i/2;
        k--;
    }
    for(int j=0;j<MAX;j++)
    {
        printf("%2d",arr[j]);
    }
    printf("\n");
    if(num==0)
        return 0;
    print(num-1);

}
void main()
{
    int i=2;
    for(int j=0;j<MAX-1;j++)
    {
        i=i*2;
    }
    i=i-1;
    print(i);
}

执行结果

Paste_Image.png

总结

这个问题,只想到了用二进制,迷宫问题还没有自己的想法,还有好长路要走

相关文章

网友评论

      本文标题:天花板编程手把手计划-第一期-第三天-打卡

      本文链接:https://www.haomeiwen.com/subject/achbzttx.html