首页 > 解决方案 > 是否可以在矩阵中放置空格而不是数字?

问题描述

我想放置空格而不是 3,并从 1 创建一个加号。像钉纸牌板。我能怎么做?

#include <stdio.h>

int main()
{ 
    int board[7][7]={{3,3,1,1,1,3,3},{3,3,1,1,1,3,3},{1,1,1,1,1,1,1},{1,1,1,0,1,1,1},{1,1,1,1,1,1,1},{3,3,1,1,1,3,3},{3,3,1,1,1,3,3}};
    int i,j;

    for ( i=0;i<7; i++)
    {
        for ( j=0; j<7; j++)
        {
            printf(" %d ",board[i][j]);
        }
        printf("\n");
    }
}

标签: c

解决方案


无法指定 '+' 或 '' 代替3int board[][]或 1,因为您定义的二维数组是 int 类型,并且您想用 char 替换它。尽管如此,如果您执行分配board[3][3]= '+',它将存储“+”的 ascii 值。

因此,您必须创建新的 char 类型的二维数组并在满足条件时替换值。

或者

您只需要迭代并替换 3 和 1 只需在满足条件时打印 '+' 和 '' 。


推荐阅读