c语言多维数组问题

来源:百度知道 编辑:UC知道 时间:2024/05/31 16:01:04
我写了一个C程序,但并没有实现我要的效果。我想给二维数组一个一个输入,并在最后一个一个输出,但在每一个(n,1)的时候就是停不下来,直接进入了下一个(n,0),也就是在输入了(n,0)之后,没有让我有机会输入该行后面的内容。
具体代码:
#include <stdio.h>
void main(){
int i,j,k,l;
int num [4][2];

//输出提示
for(i=0;i<4;i++){
for(j=0;j<2;j++){
printf("请给这个二维数组中的%d,%d赋值\n",i,j);
//接受输入的值
scanf("%d",&num[i][j]);

}
}

printf("Num这时内部的所有元素的值分别为:");
for(i=0;i<4;i++){
for(j=0;j<2;j++){
printf("%d\t\t",num[i][j]);
}
}

}

你输入的格式是不是弄错了???/ 你的这个程序没问题的呢?
注意输入的时候用空格

原因很简单,因为scanf函数吃“垃圾”了。

解决方法很简单:在scanf函数前面加上这一句话

fflush(stdin);

这个是清垃圾用的。以后最好习惯的加上这一句。