今天发现一个很奇怪的现象,不知道是什么问题:用scanf输入的话好像在某些情况下并不能输入准确?(也有可能是我脑子进水代码本身问题)如下面的例子
蒟蒻实在不懂,还请大佬帮忙解释一下这是怎么回事[爱心]。
//cin输入
#include <bits/stdc++.h>
using namespace std;
int main()
{
int n,m;
char a[10][10];
cin >> n >> m;
for (int i=1;i<=n;i++)
{
for (int j=1;j<=m;j++)
{
cin >> a[i][j];
cout << a[i][j];
}
cout << endl;
}
return 0;
}
/*
输入:
6 7
####*##
###*###
#*#####
###***#
###***#
#######
输出:
####*##
###*###
#*#####
###***#
###***#
#######
*/
//scanf输入
#include <bits/stdc++.h>
using namespace std;
int main()
{
int n,m;
char a[10][10];
scanf ("%d %d",&n,&m);
for (int i=1;i<=n;i++)
{
for (int j=1;j<=m;j++)
{
scanf ("%c",&a[i][j]);
cout << a[i][j];
}
cout << endl;
}
return 0;
}
/*
输入同样,输出:
####*
##
###
*###
#
*#####
###***
#
###*
(从洛谷IDE直接复制)
*/
谢谢回答的大佬