C语言小问题:用指向一维数组的指针变量做变量输入数据不正确

void main()
{
int i, j;
int a[2][3];
int(*p)[3];

p = a;
for (i = 0; i < 2; i++)
    for (j = 0; j < 3; j++)
        scanf_s("%d ", *(p + i) + j);  

//输入时要多输入一个数据,才会返回输入结果,但多输入的那个数据不会被输出
//为啥要多输入一个呢?
p = a;
for (i = 0; i < 2; i++)
{
for (j = 0; j < 3; j++)
printf("%d ", ((p + i) + j));
putchar('\n');
}
}

 不知道你的程序要做什么

scanf_s("%d ", *(p + i) + j);  
->
scanf_s("%d", *(p + i) + j); 
去掉空格看看

http://blog.csdn.net/coder__cs/article/details/51823035