[英]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.