扫描arr功能问题。
void scan_arr(double ar[3][5]) // Declares that it is a 3 x 5
{
int x;
int y;
printf("Enter arrays of 3x5\n");
for( x = 0; x < 3; x++ ) // Shows that this loop shall be done 3 times
{
for( y = 0; y < 5; y++ ) // Shows that 5 times * the number of the first loop
{
scanf("%lf",ar[x][y]); // Scans @ x * y and terminates after first input
}
}
}
答案 0 :(得分:4)
这是因为您在ar[x][y]
前面错过了&符号:
scanf("%lf", &ar[x][y]);
// ^
// |
// Here
scanf
需要存储值的项目地址,因此您需要使用“接收地址”操作符&
。
答案 1 :(得分:1)
你需要传递scanf
函数的数组元素的地址,所以替换它:
scanf("%lf",ar[x][y]);
与
scanf("%lf", &ar[x][y]);