#include <stdio.h>
#include <stdlib.h>
int main()
{
int a[3][4];
for (int i=0;i<3;i++){
for(int j=0;j<4;j++){
printf("a[%d][%d]:",i+1,j+1);
scanf("%d",a[i][j]);
}
}
return 0;
}
程序在第三行停止,不执行下一行
您是否在scanf
函数中看到编译器警告:
警告:格式"%d"需要类型为"int *"的参数,但参数 2 的类型为"int">
所以,使用
scanf("%d",&a[i][j]);
而不是
scanf("%d",a[i][j]);
发生这种情况是因为scanf
接收到变量的地址(指针(,而不是变量本身。 在变量名称之前添加&
将引用其地址