入门C++,先懂带动后懂,矩阵转置的函数,动态一维数组 5

1、编写一个3*3矩阵转置的函数,使用数组保存3*3矩阵,在main()函数中输入数据。2、使用动态内存分配生成动态一维数组(8个元素以上),从键盘输入数据对数组进行初始... 1、编写一个3*3矩阵转置的函数,使用数组保存3*3矩阵,在main()函数中输入数据。

2、使用动态内存分配生成动态一维数组(8个元素以上),从键盘输入数据对数组进行初始化,计算数组元素的最大值、最小值和平均值并输出。
展开
 我来答 举报
匿名用户
2014-12-02
展开全部
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
#include <iostream>
using namespace std;
 
//交换2变量值
void swap(double &v1, double &v2){
    double tmp = v1;
    v1 = v2;
    v2 = tmp;
}
//矩阵转置
void AT(double M[][3], double len){
    for(int i=0;i < len;++i)
        for(int j=0;j < i;++j)
            swap(M[i][j], M[j][i]);
}
//打印矩阵
void prtM(double M[][3], int len){
    for(int i=0;i < len;++i){
        for(int j=0;j < 3;++j)
            cout<<M[i][j]<<" ";
        cout<<endl;
    }
}
 
int main(){
    double M[3][3]={0.0};
    cout<<"输入3X3矩阵:"<<endl;
    for(int i=0;i < 3;++i)
        for(int j=0;j < 3;++j)
            cin>>M[i][j];
    AT(M, 3);
    cout<<"结果:"<<endl;
    prtM(M, 3);
return 0;
}

执行结果:

追问
大神,第2道题能顺手推舟呢?感激不尽!
追答
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
#include <iostream>
using namespace std;
 
int main(){
    const int LEN = 10;
    double *arr = new double[LEN];
    //初始化数组
    for(int i=0;i < LEN;++i)
        cin>>arr[i];
    //求最大值和最小值,平均值
    double min = arr[0], max = arr[0];
    double sum = 0.0, avg = 0.0;
    for(int i=1;i < LEN;++i){
        if(arr[i] < min)
            min = arr[i];
        if(arr[i] > max)
            max = arr[i];
        sum += arr[i];
    }
    avg = sum / LEN;
    cout<<"最小值:"<<min<<endl
        <<"最大值:"<<max<<endl
        <<"平均值:"<<avg<<endl;
 
return 0;
}
光点科技
2023-08-15 广告
通常情况下,我们会按照结构模型把系统产生的数据分为三种类型:结构化数据、半结构化数据和非结构化数据。结构化数据,即行数据,是存储在数据库里,可以用二维表结构来逻辑表达实现的数据。最常见的就是数字数据和文本数据,它们可以某种标准格式存在于文件... 点击进入详情页
本回答由光点科技提供
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式