惯性聚合 高效追踪和阅读你感兴趣的博客、新闻、科技资讯
阅读原文 在惯性聚合中打开

推荐订阅源

Blog — PlanetScale
Blog — PlanetScale
Cyber Security Advisories - MS-ISAC
Cyber Security Advisories - MS-ISAC
Vercel News
Vercel News
B
Blog
腾讯CDC
P
Proofpoint News Feed
Google DeepMind News
Google DeepMind News
N
Netflix TechBlog - Medium
L
LangChain Blog
F
Fortinet All Blogs
T
The Blog of Author Tim Ferriss
人人都是产品经理
人人都是产品经理
OSCHINA 社区最新新闻
OSCHINA 社区最新新闻
I
InfoQ
IT之家
IT之家
酷 壳 – CoolShell
酷 壳 – CoolShell
aimingoo的专栏
aimingoo的专栏
D
DataBreaches.Net
Stack Overflow Blog
Stack Overflow Blog
The Cloudflare Blog
Last Week in AI
Last Week in AI
奇客Solidot–传递最新科技情报
奇客Solidot–传递最新科技情报
博客园 - 三生石上(FineUI控件)
T
Tailwind CSS Blog

博客园 - Aween's Blog

showModelessDialog()使用详解 通用数制转换器 图形旋转的C语言源程序 字符串查找 c语言库函数 学习c语言程序设计的误区 图形处理 基本调试手段 图形程序运行的条件 关于二十四点游戏的编程思路 飞行字 全屏幕模拟时钟的c源程序 以前常用的攻击软件源代码 图形模式下的汉字显示 运行错误的判断与调试 五子棋算法 设计彩色框的c源程序 上海黑暗之龙--麻将原代码 董乘宇--迷宫程序1.10版
两个矩阵相乘的源程序
Aween's Blog · 2006-03-02 · via 博客园 - Aween's Blog

 

/*****************A=B*C******************/
#include
<stdio.h>
#include
<conio.h>
#define X 3
#define Y 3

int a[X][Y];
int b[X][Y];
int c[X][Y];

void matrix(int b[][X],int c[][Y]);
main()
{
    
int i,j,temp;
    clrscr();
    printf(
"Please input int matrix b[%d][%d]\n",X,Y);
    
for(i=0;i<Y;i++)
        
for(j=0;j<Y;j++){
        scanf(
"%d",&temp);
        b[i][j]
=temp;
        }

    printf(
"Please input int matrix c[%d][%d]\n",X,Y);
    
for(i=0;i<X;i++)
        
for(j=0;j<Y;j++){
        scanf(
"%d",&temp);
        c[i][j]
=temp;
        }

    matrix(b,c);
    printf(
"Now print resource matrix b[%d][%d]=",X,Y);
    
for(i=0;i<X;i++){
        printf(
"\n");
        
for(j=0;j<Y;j++)
        printf(
"%d ",b[i][j]);
        }

    printf(
"\n");
    printf(
"Now print resource matrix c[%d][%d]=",X,Y);
    
for(i=0;i<X;i++){
        printf(
"\n");
        
for(j=0;j<Y;j++)
        printf(
"%d ",c[i][j]);
        }

    printf(
"\n");
    printf(
"Now printm multiply results matrix a[%d][%d]=B*C:",X,Y);
    
for(i=0;i<X;i++){
        printf(
"\n");
        
for(j=0;j<Y;j++)
        printf(
"%d ",a[i][j]);
    }

    getch();
    
return 0;
}

/********************************************************************/
void matrix(int b[][X],int c[][Y])
{
    
int i,j,k,temp;
    
for(i=0;i<X;i++)
        
for(j=0;j<Y;j++){
        
for(k=0;k<Y;k++)
        a[i][j]
+=b[i][k]*c[k][j];
    }

}