首页 > 解决方案 > 形状矩阵帮助(不断崩溃)

问题描述

我正在尝试打印形状矩阵,但我的程序继续崩溃。我的代码有什么问题?

#include <stdio.h>

int main ()
{
    int row, col;

    printf("How many rows?\n");
    scanf("%d", &row);
    printf("How many columns?\n");
    scanf("%d", &col);

    int i=0,j=0;

    while (i<row)
    {
        i ++;

        while(j < col)

        {
            printf("$");
            j ++;
        }
        return(0);
    }
}

我尝试通过初始化计数器来排除故障,并尝试查找语法错误。另外,我怎样才能更好地解决问题?我是入门级 C 程序员。

标签: c

解决方案


包括

int main ()
{
    int row, col;

    printf("How many rows?\n");
    scanf("%d", &row);
    printf("How many columns?\n");
    scanf("%d", &col);

    int i=0,j=0;

    while (i<row)
    {
        i++;

        j = 0;
        while(j < col)
        {
            printf("$");
            j++;
        }
//         return(0); you don't need a return here
    }
}

或者,使用 for 循环会更好

for (int i = 0; i < row; ++i)
{
    for (int j = 0; j < col; ++j)
        printf("$");
}

此外,在使用它们之前验证行和列将是一个好主意

if (row < 0 || row > YourRowCount || col < 0 || col > YourColCount)
{
    printf("Error row / col: %d,%d\n", row, col);
    exit(-1);
}

推荐阅读