广告广告
  加入我的最爱 设为首页 风格修改
首页 首尾
 手机版   订阅   地图  繁体 
您是第 4502 个阅读者
 
发表文章 发表投票 回覆文章
  可列印版   加为IE收藏   收藏主题   上一主题 | 下一主题   
y2123280394
个人文章 个人相簿 个人日记 个人地图
路人甲
级别: 路人甲 该用户目前不上站
推文 x0 鲜花 x0
分享: 转寄此文章 Facebook Plurk Twitter 复制连结到剪贴簿 转换为繁体 转换为简体 载入图片
推文 x0
[C/C++][求助] 学校作业~~急~~请用C++写
宣告int a,b,c
1. 输入m,n,p<10 ..

访客只能看到部份内容,免费 加入会员 或由脸书 Google 可以看到全部内容



[ 此文章被y2123280394在2006-06-05 06:51重新编辑 ]


献花 x0 回到顶端 [楼 主] From:台湾中华电信 | Posted:2006-06-01 04:52 |
pkpk0808 手机
数位造型
个人文章 个人相簿 个人日记 个人地图
初露锋芒
级别: 初露锋芒 该用户目前不上站
推文 x1 鲜花 x9
分享: 转寄此文章 Facebook Plurk Twitter 复制连结到剪贴簿 转换为繁体 转换为简体 载入图片

C=AB 没错吧?
我用C写的,除了matrix mutiply的演算法要想一下,其他应该都不难
输出输入要改再自己改啰~

复制程式
#include <stdio.h>

int main()
{
       int m, n, p;
       int i, j, k;

       int a[10][10], b[10][10], c[10][10];

       /* input m, n, p */
       scanf("%d %d %d", &m, &n, &p);

       /* input A */
       for(i=0; i<m; i++)
              for(j=0; j<n; j++)
                     scanf("%d", &a[i][j]);

       /* input B */
       for(i=0; i<n; i++)
              for(j=0; j<p; j++)
                     scanf("%d", &b[i][j]);

       /* initialize C */
       for(i=0; i<m; i++)
              for(j=0; j<p; j++)
                     c[i][j] = 0;
       
       /* multiple */
       for(i=0; i<m; i++)
              for(j=0; j<p; j++)
                     for(k=0; k<n; k++)
                            c[i][j] = c[i][j] + a[i][k]*b[k][j];

       printf("\n");
       /* display C */
       for(i=0; i<m; i++)
       {
              for(j=0; j<p; j++)
                     printf("%4d", c[i][j]);
              printf("\n");
       }

       return 0;
}




sample input 1:
复制程式
3 2 3

5 1
3 4
2 6

2 2 1
6 4 5



sample output 1:
复制程式
  16  14  10
  30  22  23
  40  28  32



sample input 2:
复制程式
3 3 3

1 2 5
0 1 4
2 1 1

1 3 2
2 3 4
1 5 1



sample output 2:
复制程式
  10  34  15
   6  23   8
   5  14   9


献花 x0 回到顶端 [1 楼] From:台湾中华电信 | Posted:2006-06-03 17:52 |
y2123280394
个人文章 个人相簿 个人日记 个人地图
路人甲
级别: 路人甲 该用户目前不上站
推文 x0 鲜花 x0
分享: 转寄此文章 Facebook Plurk Twitter 复制连结到剪贴簿 转换为繁体 转换为简体 载入图片

这是我同学用C++打的

以下是代码:

#include<iostream.h>
#include<stdio.h>
void main()
{
     int a[10][10],b[10][10],c[10][10]={0},m,n,p,i,j,k;
{
cout<<" m n p"<<endl;
cin>>m>>n>>p;
}
while(!(n<10 && m<10 && p<10))
{
cout<<"请重新输入 m n p"<<endl;
cin>>m>>n>>p;
}
for(i=1;i<=m;i++)
{
for(j=1;j<=n;j++)
{
cout<<"a["<<i<<"]"<<"["<<j<<"]=";
cin>>a[j];
}
}

  for(i=1;i<=n;i++)
{
for(j=1;j<=p;j++)
{
cout<<"b["<<i<<"]"<<"["<<j<<"]=";
cin>>b[j];
}
}
for(i=1;i<=m;i++)
{
for(j=1;j<=p;j++)
{
for(k=1;k<=n;k++)
c[j]=c[j]+a[k]+b[k][j];
cout<<"c["<<i<<"]"<<"["<<j<<"]="<<c[j]<<"\t";
}
}
}
执行结果:
以下是代码:
m n p
2
2
2
a[1][1]=2
a[1][2]=2
a[2][1]=2      
a[2][2]=2
b[1][1]=2              
b[1][2]=2            
b[2][1]=2                  
b[2][2]=2
c[1][1]=8     c[1][2]=8     c[2][1]=8     c[2][2]=8    
Press any key to continue
老师要的是
以下是代码:
m n p
2
2
2
a[1][1]=2             a[1][2]=2            a[2][1]=2                  a[2][2]=2
b[1][1]=2             b[1][2]=2            b[2][1]=2                  b[2][2]=2
c[1][1]=8             c[1][2]=8           c[2][1]=8                       c[2][2]=8    
Press any key to continue
怎么改呢?各为高手教教我吧


献花 x0 回到顶端 [2 楼] From:台湾中华电信 | Posted:2006-06-03 22:33 |

首页  发表文章 发表投票 回覆文章
Powered by PHPWind v1.3.6
Copyright © 2003-04 PHPWind
Processed in 0.060602 second(s),query:16 Gzip disabled
本站由 瀛睿律师事务所 担任常年法律顾问 | 免责声明 | 本网站已依台湾网站内容分级规定处理 | 连络我们 | 访客留言