作者共发了1篇帖子。 内容转换:不转换▼
 
点击 回复
230 0
【试题】矩阵乘法
一派护法 十九级
1楼 发表于:2016-4-16 20:45
#include <stdio.h>
#include <stdlib.h>

int **create2d(int row, int col)
{
    int i;
    int **pp = (int **)malloc(row * sizeof(int *));
    *pp = (int *)malloc(row * col * sizeof(int));
    for (i = 1; i < row; i++)
        pp[i] = pp[i - 1] + col;
    return pp;
}

void free2d(int **pp)
{
    free(*pp);
    free(pp);
}

int main()
{
    int m, s, n;
    int **a, **b;
    int i, j, v, p;
    
    scanf("%d%d%d", &m, &s, &n);
    a = create2d(m, s);
    b = create2d(s, n);
    
    for (i = 0; i < m; i++)
        for (j = 0; j < s; j++)
            scanf("%d", &a[i][j]);
    for (i = 0; i < s; i++)
        for (j = 0; j < n; j++)
            scanf("%d", &b[i][j]);
    
    for (i = 0; i < m; i++)
    {
        for (j = 0; j < n; j++)
        {
            v = 0;
            for (p = 0; p < s; p++)
                v += a[i][p] * b[p][j];
            printf("%d ", v);
        }
        putchar('\n');
    }
    
    free2d(a);
    free2d(b);
    return 0;
}

回复帖子

内容:
用户名: 您目前是匿名发表
验证码:
(快捷键:Ctrl+Enter)
 

本帖信息

点击数:230 回复数:0
评论数: ?
作者:巨大八爪鱼
最后回复:巨大八爪鱼
最后回复时间:2016-4-16 20:45
 
©2010-2024 Arslanbar Ver2.0
除非另有声明,本站采用知识共享署名-相同方式共享 3.0 Unported许可协议进行许可。