C语言-移数字游戏

Posted 灯火阑处

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了C语言-移数字游戏相关的知识,希望对你有一定的参考价值。

将1~8个数随机的填写到该数阵的外层圆圈中,只剩下中间的一个空圆圈。规定每个数字只能按照数阵中的直线从一个圆圈移动到另一个空的圆圈中。通过若干步的移动,要求将该数阵中的数字移动成为图中所示的状态

void Print(int m[]) 
    printf("    [%d]--[%d]--[%d]\\n", m[0], m[1], m[2]);
    printf("     |  %c | %c  | \\n", 92, 47);
    printf("    [%d]--[ ]--[%d]\\n", m[7], m[3]);
    printf("     |  %c | %c  | \\n", 47, 92);
    printf("    [%d]--[%d]--[%d]\\n", m[6], m[5], m[4]);

void getStep(int m[]) 
    for (int i = 0; i < 8; ++i) 
        for (int j = 0; j < 8 - i - 1; ++j) 
            if (m[j] > m[j + 1]) 
                int tmp  = m[j];
                m[j]     = m[j + 1];
                m[j + 1] = tmp;
                printf("(%d#  -->  0#)\\n", j + 1);
                printf("(%d#  -->  %d#)\\n", j + 2, j + 1);
                printf("(0#  -->  %d#)\\n", j + 2);
            
        
    
    printf("\\n");

int main(int argc, const char *argv[]) 
    int i, m[8];
    printf("Please input 8 integer (1~8) to arrange this matrix\\n");
    for (i = 0; i < 8; ++i) 
        scanf("%d", &m[i]);
    
    printf("The initial data matrix is like\\n");
    Print(m);
    printf("\\nMove Step:\\n");
    getStep(m);
    printf("The result of moving is\\n");
    Print(m);
    return 0;

以上是关于C语言-移数字游戏的主要内容,如果未能解决你的问题,请参考以下文章

c语言猜数字游戏源代码

猜数字游戏c语言编程一到五?

C语言 猜数字游戏代码

c语言设计猜数字游戏

c语言猜数字

c语言猜数游戏编程