【问题标题】:2D array of chars, scan and printout like table二维字符数组,像表格一样扫描和打印
【发布时间】:2016-02-12 01:54:05
【问题描述】:

我需要二维字符数组进行后期计算,但这会在 4 个字符后结束程序。什么是不正确的?它正确地使用字符串,所以我希望使用 scanf 的东西是错误的。有人能告诉我怎么会这样吗?为什么会这样?谢谢。 (C::B,W)

char map[height][width];
for (i=0;i<height;i++)
{
    for (j=0;j<width;j++)
    {
        scanf("%c",&map[i][j]);
    }
}

for (i=0;i<height;i++)
{
    for (j=0;j<width;j++)
    {
        printf("%c",map[i][j]);
    }
    printf("\n");
}

【问题讨论】:

  • 这将有助于查看更多代码,其中您为高度和宽度赋值。
  • 你输入的不是换行符吗?
  • 它可以正确地处理数字,因此不会出错。
  • 是的,我愿意。它在 4 char 3x3、8-4x4 和 12-5v5 之后结束

标签: c arrays char 2d


【解决方案1】:

scanf("\n %c",&map[i][j]);

如果您使用 %c,Scanf 不会删除空格

【讨论】:

  • 什么是空白?
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2019-10-24
  • 2016-07-02
  • 2018-09-29
相关资源
最近更新 更多