繁体   English   中英

用C语言扫描字符数组

[英]scan character array in C language

我想扫描一个字符数组作为输入,如下所示,并且我还想从用户那里获得行数(这是一个方矩阵)。

OX
氧代
OX

但是当我使用下面的程序扫描它时,它仅扫描两行。

#include <stdio.h>

int main()
{
    int size,i,j;
    printf("Enter size");
    scanf("%d",&size);

    int a[size][size];

    for(i=0;i<size;i++)
        for(j=0;j<size;j++)
            scanf("%c",&a[i][j]);

}

我得到的输出是:

输入尺寸3
OX
氧代

那么它并不需要最后一行。

请记住,此处不会跳过空格。

这将解决它,也将占用空白:

scanf(" %c",&a[i][j]);

抱歉,我没有足够的声誉来发表评论。 除了Yohannes的答案之外,请考虑您期望什么样的输入。 您使用整数数组存储值,但是您告诉scanf使用"%c"字符。 也许使用字符数组或采用整数作为输入,并摆脱编译器的类型不匹配警告。

scanf("%d",&a[i][j]); 读取整数

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM