我编写了一个C程序,从标准输入中读取数据。数据以数字开头,表示数据集的数量,接下来有N对数据,格式为(x y)。以下是我的代码:
#include <stdio.h>
int main()
{
int n_sets;
scanf("%d", &n_sets);
int i;
for(i = 0; i < n_sets; ++i)
{
int m, n;
scanf("(%d %d)", &m, &n);
printf("%d\t%d\n", m, n);
}
return 0;
}
但它不起作用。在输入数据集的编号后,程序直接打印未初始化的m&n。但是当我在(%d %d)
前面添加一个空格时,它就可以正常工作了。有人能解释一下吗?
scanf
的返回值。fflush()
函数。 - Lucio