1.编写一个input函数,实现有n个元素的一维数组(向量)的数据输入。
void input(double a[], int n);
2.编写一个print函数,实现有n个元素的一维数组(向量)的数据输出。
void print(double a[], int n);
3.编写一个multiply函数,实现两个有n个元素的一维数组(向量)的相乘,返回值为相乘的结果。
double multiply(double a[], double b[], int n);
向量相乘的结果计算公式为:
4.编写main函数:
创建两个同样大小的一维数组(向量);
分2次调用input函数输入数组的元素。
分2次调用print函数输出数组的元素。
调用multiply函数计算这两个向量相乘的结果并输出。
#include <iostream>
void input(double a[], int n)
{
for (int i = 0; i < n; i++)
std::cin >> a[i];
}
void print(double a[], int n)
{
std::cout << '(';
for (int i = 0; i < n; i++)
{
std::cout << a[i];
if (i < n - 1)
std::cout << ", ";
}
std::cout << ")\n";
}
double multiply(double a[], double b[], int n)
{
double r = 0;
for (int i = 0; i < n; i++)
r += a[i] * b[i];
return r;
}
int main()
{
const int n = 5;
double a[n], b[n];
std::cout << "请输入向量a(" << n << "个元素):\n";
input(a, n);
std::cout << "请输入向量b(" << n << "个元素):\n";
input(b, n);
std::cout << "a = ";
print(a, n);
std::cout << "b = ";
print(b, n);
std::cout << "a * b = " << multiply(a, b, n) << '\n';
return 0;
}