Chinaunix

标题: 请教一个问题 [打印本页]

作者: yeknight    时间: 2006-10-03 21:47
标题: 请教一个问题
#include<stdio.h>
#define M 100
#define N 100
int main()
{
char c[M][N];
int m,n,i;
scanf("%d %d",&m,&n);
for(i=0;i<m;i++)
  gets(c[i]);
for(i=0;i<m;i++)
  printf("%s\n",c[i]);
return 0;
}
为什么我在运行这个程序的时候输入m为2时,却只能输入一行字符串?
作者: tyc611    时间: 2006-10-03 22:10
你仔细看看输出结果,猜猜为什么
作者: tyc611    时间: 2006-10-03 22:12
试试,m取3,4的情况,答案就差不多出来了
作者: yeknight    时间: 2006-10-03 22:45
还是不明白
那为什么下面这个可以输入3个
#include<stdio.h>
int main()
{
char c[3][100];
int i;
for(i=0;i<3;i++)
{
   gets(c[i]);
  }
return 0;
}
作者: yeknight    时间: 2006-10-03 22:48
已经明白了
原来scanf 不吃换行符




欢迎光临 Chinaunix (http://bbs.chinaunix.net/) Powered by Discuz! X3.2