这是因为 “回车” “空格”等操作也被当作字符输入了。可以使用一个getchar()将回车吸收。具体的程序我给你复制了上来,只在你这基础上加了个输出以便观察
#include
void main()
{
char ch[100][100];
int R,C;
scanf("%d",&R);
scanf("%d",&C);
printf("%d %d\n",R,C);
int i,j;
for(i=0,j=0;i
for(j=0;j
getchar();
scanf("%c",&ch[i][j]);
}
}
for(i=0;i
for(j=0;j
printf("%c ",ch[i][j]);
}
printf("\n");
}
}
运行结果
%c是格式控制符,表示输入的是字符类型,但是空格和回车也属于字符类型,所以你输入两个字符的同时也把空格或者回车存到数组里了,你在scanf()语句后面加上getchar();就好了,它可以接受空格或回车。