c 语言求两个 M N 数组的总和,这是错误的

发布于 科技 2024-08-20
11个回答
  1. 匿名用户2024-02-01

    #include ""

    void main()

    int m,n;

    int i,j;

    int a[100][100],b[100][100],c[200][200];

    printf("请输入矩阵的行和列");

    scanf("%d,%d",&m,&n);

    printf("请为 %d 行 %d 列输入矩阵 a",m,n);

    for(i=0;ifor(j=0;jscanf("%d",&a[i][j]);

    printf("请输入矩阵 b 作为 %d 行 %d 列",m,n);

    for(i=0;ifor(j=0;jscanf("%d",&b[i][j]);

    for(i=0;ifor(j=0;jc[i][j]=a[i][j]+b[i][j];

    printf("A+B 结果为:");

    for(i=0;ifor(j=0;jprintf("%-3d",c[i][j]);

    printf("");

    错误 1:声明的变量必须位于表达式之前。

    错误 2:声明数组时,需要声明其长度。

  2. 匿名用户2024-01-31

    认为第三个矩阵没有初始化,系统会给它一个默认的随机值(通常是一个大的负数),你应该开始将其全部归零。

  3. 匿名用户2024-01-30

    最主要的是定义数组时使用变量。

    事实上,您可以定义一个动态的两位数数组。

    int m,n;

    printf("请输入矩阵的行和列");

    scanf("%d,%d",&m,&n);

    int **a;

    a=(int **malloc( m*sizeof(int *) 定义第一列。

    for(int i=0;ia[i]=(int *)malloc(n*sizeof(int )) 定义行。

    这样你就不会出错。

  4. 匿名用户2024-01-29

    必须首先定义数组的长度。

  5. 匿名用户2024-01-28

    如果数组不是动态分配的,则 m>0 和 n>0

    如果是动态数组,则 m>=0, n>=0; 即使是 m<0,n<0 情况也允许在未定义的访问上。

  6. 匿名用户2024-01-27

    使用 malloc 实现它:

    int m,n;

    int i,j;

    int *p;

    scanf("%d%d",&m,&n);

    p=(int *)malloc(sizeof(int)*m*n);

    p+m*i+j) 等价于元素 for(i=0; i

    int main(void)

  7. 匿名用户2024-01-26

    #include

    #include

    int main()

    int n,m,i,j;

    int a[4][4];

    int row=0,col=0;

    int min=100000;给 min 一个足够大的数字 printf("请输入 n 和 m");

    scanf("%d%d",&n,&m);

    printf("请输入 n 行和 m 列的数组");

    for( i=0;i

  8. 匿名用户2024-01-25

    int i,j,n,m;

    int min,h,l;min、h、l表示最小值,行下标和列下标分别为下标。

    int a[,]

    for(i=0;i a[i,j]}

  9. 匿名用户2024-01-24

    这个问题有很多方法可以处理,关键要看你是一次移动一个仓位还是多仓位,如果是一个仓位,那么就设置一个tmp变量,如果一次移动多个仓位,那么就需要设置另一个数组一次移动一个仓位, 那么在一个循环中移动 m 次就好了,for(i=0; 如果我移动了多个位置,那么最好为 (i=0; ib[i+n-m]=a[i];

    for(i=m;ib[i]=a[i-m];

  10. 匿名用户2024-01-23

    for(i=0;iscanf("%d ",p);

    你没有看到循环末尾的分号吗? 这将进入一个空循环,这意味着您只输入数组的最后一个值。 scanf("%d ",p);不要在 %d 后面添加空格。 没有其他问题。

    for(i=0;iscanf("%d",p);

  11. 匿名用户2024-01-22

    void main ()

    printf("请输入您要交换的号码:");

    scanf("%d",&m);

    printf("%d ",m);

    xs(p,a,n,m);

    void xs(int *p,int a[100],int n,int m) 没有改变,但如果直接在函数中使用 p+m+j 是有可能越线的,所以应该限制它。

    for(j=0;jprintf("%d ",*p);

相关回答
5个回答2024-08-20

*略有修改的 Eagle 游戏*

#include >>>More

27个回答2024-08-20

如果要接受 A 数组中的所有数字,而 B 只接受满足条件的数字,则会使 B 无法正常输出,在这种情况下,初始化 B 并包含 >>>More

5个回答2024-08-20

我认为如此:

#include >>>More

5个回答2024-08-20

#include

我没有写完会议以找到最大值。 >>>More