数组2 c++
来源:百度知道 编辑:UC知道 时间:2024/06/24 16:21:30
在文件作用域定义一个常量N。
const int N = 3;
编写一个input函数,实现N*N方阵的数据输入。
void input(double (*A)[N]);
编写一个print函数,实现N*N方阵的数据输出。
void print(double (*A)[N]);
编写一个multiply函数,实现两个N*N方阵A和B的相乘,相乘结果放在第3个方阵C。
void multiply(double (*A)[N], double (*B)[N], double (*C)[N]);
方阵相乘的计算公式为:
编写main函数,
创建3个N*N的方阵;
调用input函数输入方阵A和B的元素。
调用print函数输出方阵A和B的元素。
调用multiply函数计算方阵A和B的乘积。
调用print函数输出方阵C的元素
const int N = 3;
编写一个input函数,实现N*N方阵的数据输入。
void input(double (*A)[N]);
编写一个print函数,实现N*N方阵的数据输出。
void print(double (*A)[N]);
编写一个multiply函数,实现两个N*N方阵A和B的相乘,相乘结果放在第3个方阵C。
void multiply(double (*A)[N], double (*B)[N], double (*C)[N]);
方阵相乘的计算公式为:
编写main函数,
创建3个N*N的方阵;
调用input函数输入方阵A和B的元素。
调用print函数输出方阵A和B的元素。
调用multiply函数计算方阵A和B的乘积。
调用print函数输出方阵C的元素
#include <iostream>
using namespace std;
const int N = 3;
void input(double (*A)[N])
{
int i;
int j;
for (i = 0; i < N; i++)
{
for (j = 0; j < N; j++)
{
cout<<"input a number:\n";
cin>>A[i][j];
}
}
}
void print(double (*A)[N])
{
int i;
int j;
for (i = 0; i < N; i++)
{
for (j = 0; j < N; j++)
{
cout<<A[i][j]<<" ";
}
cout<<endl;
}
}
void multiply(double (*A)[N], double (*B)[N], double (*C)[N])
{
int i;
int j;
int k;
double sum;
for (i = 0; i < N; i++)
{
for (j = 0; j < N; j++)
{
sum = 0;
for (k = 0; k < N; k++)
{
sum += A[i][k]*B[k][j];
}
C[i][j] = sum;
}