【发布时间】:2020-10-10 08:36:32
【问题描述】:
这里是我写的代码:
#include <stdio.h>
void ReadData_and_Print(int r, int c, double pin[r][c]);
int main(){
int p[0][0];
ReadData_and_Print(0,0,p[0][0]);
}
void ReadData_and_Print(int r, int c, double pin[r][c])
{
int i=0,j=0;
printf("give rows:");
scanf("%d",&r);
printf("give columns");
scanf("%d",&c);
for (i=0;i<r;i++)
{
for (j=0;j<c;j++)
{
printf("give number:");
scanf("%d",&pin[i][j]);
}
}
for (i=0;i<r;i++)
{
for (j=0;j<c;j++)
{
printf("%d ",pin[i][j]);
}
}
输出:
give rows2
give columns3
give number1
give number2
give number3
give number4
give number5
give number6
3 4 5 6 3 4 5 6
当我给出 1 2 3 4 5 6 时,结果是 3 4 5 6 3 4 5 6。我应该期望 1 2 3 4 5 6。 我知道这是一个非常简单的问题,但它困扰着我。我不排除我缺乏对数组和 for 的知识。我做了研究,但我找不到解决方案。 提前致谢。
【问题讨论】:
-
int p[0][0];... 你预计会发生什么