【发布时间】:2020-04-28 10:55:41
【问题描述】:
在下面的代码中,我试图在子程序中 scanf() 一个矩阵,然后我想在 main() 部分中 printf() 它。我怎样才能做到这一点?我的主要目标是完全理解如何将矩阵从子程序传递到main() 程序。谢谢!
#include <stdio.h>
#define R 2
#define C 3
float save_the_matrix(int N, int M, float (*B)[M]);
int main(void)
{
int n=2,m=3;
int i,j;
float A[n][m],C[n][m];
puts("Enter the values of the matrix:");
save_the_matrix( n, m, c);
for(i=0;i<n;i++)
{
for(j=0;j<m;j++)
printf("%6.2f",C[i][j]);
printf("\n");
}
return 0;
}
float save_the_matrix(int N, int M, float (*B)[M])
{
for(i=0;i<N;i++)
for(j=0;j<M;j++)
{
printf("A[%d][%d]=",i,j);
(*B)[M]=scanf("%f",&A[i][j]);
}
}
【问题讨论】:
-
我认为您的代码中有太多错误,无法提供合理的答案!例如,您的
#define C 3行将导致与稍后将C声明为数组变量的巨大 冲突。你在save_the_matrix中使用了一个变量A,但它是在哪里声明的? -
嗨@AdrianMole,非常感谢您的回答。只是试图纠正我的代码,但并没有真正得到好的结果。你有没有机会解决不正确的事情?它真的会帮助我加快我对这部分 C 的学习。几天前才开始。非常感谢!!