C 语言计算矩阵的法向量和迹的程序

2025 年 1 月 7 日 | 阅读 3 分钟

这个 C 语言程序确定给定矩阵的**迹**和范数。矩阵的主对角线,即从**左上角**到**右下角**的对角线,被称为矩阵的**迹**。矩阵的范数表示为所有元素平方和的平方根。

方法

  1. 创建一个矩阵并列出其中的每个元素。
  2. 将数组所有成员的总和取平方根,以确定矩阵的范数。
  3. 将主对角线成员相加,以评估矩阵的迹。

示例

文件名:Normal_Trace.c

输出

Enter the rows of a matrix: 4
Enter the columns of a matrix:4
Enter the elements of the matrix:
1 2 3 4
5 6 7 8
3 4 5 7
2 4 7 9
The Frobenius Norm: 21.28
The Trace of the matrix: 21.00

说明

提供的 C 语言程序计算矩阵的**Frobenius 范数**和**迹**。首先包含必要的**输入/输出**和数学运算库。使用矩阵本身、**行数 (r)**、**列数 (c)** 和 **Frobenius 范数**作为输入,范数函数计算**Frobenius 范数**,它衡量矩阵的**“大小”**。

在遍历矩阵并相加每个元素的平方后,返回总和的平方根作为范数。给定一个方阵及其**大小 num**,**matrix_Trace** 函数生成矩阵的迹,即其对角线元素的总和。它在遍历对角线元素后返回它们的总和。

用于确定矩阵 **Frobenius 范数**的程序使用 **matrixNormal 函数**,该函数接受维度 **r** 和 **c** 以及矩阵本身。通过打印结果提供矩阵的 Frobenius 范数,该结果存储在名为 normal 的变量中,并以两位小数写入终端。

如果矩阵是方阵,程序使用 **matrix_Trace 函数**计算**迹值**,提供维度 **c**(因为它是方阵)和矩阵。一个名为 **traceofmatrix** 的变量存储迹值,该值以最多两位小数报告到终端,并表示矩阵的迹。

程序在**主函数**中收集矩阵的组件,并检查以确保它们是方阵,然后进行迹计算。之后,它收集用户输入的矩阵元素并初始化一个矩阵数组。**MatrixNormal** 用于**计算**和显示 **Frobenius 范数。**如果矩阵是方阵,则使用 **Matrix_Trace** 计算和显示迹。为表示程序成功运行,它返回 **0**。