- 在线时间
- 0 小时
- 最后登录
- 2007-1-14
- 注册时间
- 2007-1-14
- 听众数
- 3
- 收听数
- 0
- 能力
- 0 分
- 体力
- 85 点
- 威望
- 0 点
- 阅读权限
- 20
- 积分
- 33
- 相册
- 0
- 日志
- 0
- 记录
- 0
- 帖子
- 15
- 主题
- 3
- 精华
- 0
- 分享
- 0
- 好友
- 0
升级   29.47% 该用户从未签到
 |
|
<p>这是我遍的矩阵乘法的程序,大家一起探讨一下,有没有更好,更精巧的算法.谢谢了</p><p>#include "stdio.h"<br/>#define M 3<br/>#define N 2<br/>#define L 4</p><p>void jzcf(int array[M][N],int boy[N][L],int c[M][L])<br/>{<br/> int m,n,l;<br/> for(m=0;m<M;m++) /*运算矩阵1和矩阵2的乘积的子函数*/<br/> for(l=0;l<L;l++)<br/> {for(n=0;n<N;n++) <br/> c[m][l]=c[m][l]+array[m][n]*boy[n][l];<br/> }<br/> } <br/>main()<br/>{/*求矩阵乘法的程序*/<br/> int a[M][N],b[N][L],c[M][L]={0};<br/>int m,n,l,i;<br/>do<br/>{<br/> printf("请输入矩阵1的值:\n"); /*输入矩阵1的值*/<br/> for(m=0;m<M;m++)<br/> for(n=0;n<N;n++)<br/>{ scanf("%d",&a[m][n]);<br/> <br/>} <br/> printf("请输入矩阵2的值:\n");<br/> for(n=0;n<N;n++) /*输入矩阵2的值*/<br/> for(l=0;l<L;l++)<br/>{ scanf("%d",&b[n][l]);<br/> <br/>} <br/> jzcf(a,b,c);<br/> printf("以下是矩阵1和矩阵2的乘积:\n");<br/> for(m=0;m<M;m++) <br/> for(l=0;l<L;l++)<br/> {printf("%5d",c[m][l]);<br/> if((l+1)%L==0) printf("\n");<br/>} <br/> printf("想要结束程序请输入0;\n继续程序请输入其他整数。\n");<br/> printf("i=");<br/> scanf("%d",&i);<br/>} while(i==0); /*是否执行循环*/<br/> <br/>}<br/></p> |
zan
|