qq_25987491
qq_25987491
采纳率50%
2016-11-25 14:57 阅读 2.6k
已采纳

关于c语言中scanf的字符连续输入问题

#include
int main()
{
int i,j;
char n[10][10];
for(i=0;i<4;i++)
for(j=0;j<4;j++)
{
scanf("%c",&n[i][j]);
}
printf("\n");
for(i=0;i<4;i++)
for(j=0;j<4;j++)
{
printf("%c",n[i][j]);
}

return 0;

}
图片说明

  • 点赞
  • 写回答
  • 关注问题
  • 收藏
  • 复制链接分享

6条回答 默认 最新

  • 已采纳
    wangbo90518 wangbo90518 2016-11-25 15:36

    在用"%c"格式输入字符时,转义字符作为有效输入。

    点赞 评论 复制链接分享
  • YXTS122 YXTS122 2016-11-26 02:14

    scanf("%c",这里要改为scanf("%c ",加个空格,你没加

    点赞 1 评论 复制链接分享
  • chm21st wsdmlife 2016-11-25 15:13

    输入前3行数据的换行也被做为字符读入了,因此输出会少3个点。

    点赞 评论 复制链接分享
  • qq_36693404 Met.Joe 2016-11-26 16:36

    你多读进去三个回车。就是\n

    点赞 评论 复制链接分享
  • qq_36693404 Met.Joe 2016-11-26 16:37

    难道你以为C语言会像Python一样自动给你换行?

    点赞 评论 复制链接分享
  • qq_36693404 Met.Joe 2016-11-26 16:44

    你的输入和输出根本对不上,你的数组储存的是,第一行x.s.第二行\n..x
    第三行.\n..第四行xd\n.
    这就是你数据实际的存储内容。看看是不是一行四个。正好少了三个点

    点赞 评论 复制链接分享

相关推荐