C语言程序 单位矩阵
单位矩阵介绍 :
单位矩阵的字典定义是一个正方形矩阵,其中主对角线上的所有元素都是1,其他元素都是0。在下图中,每个矩阵都是单位矩阵。
在线性代数中,这有时被称为单位矩阵,是一个正方形矩阵(大小=n x n),主对角线上有1,其他地方有0。单位矩阵用 “I “表示。有时U或E也被用来表示单位矩阵。
单位矩阵的一个特性是,如果一个矩阵与一个单位矩阵相乘,它就不会有任何变化。
示例:
Input : 2
Output : 1 0
0 1
Input : 4
Output : 1 0 0 0
0 1 0 0
0 0 1 0
0 0 0 1
The explanation is simple. We need to make all
the elements of principal or main diagonal as
1 and everything else as 0.
打印单位矩阵的程序:
其逻辑很简单。你需要在矩阵中行与列相等的位置打印1,其他位置则为0。
// C program to print Identity Matrix
#include<stdio.h>
int Identity(int num)
{
int row, col;
for (row = 0; row < num; row++)
{
for (col = 0; col < num; col++)
{
// Checking if row is equal to column
if (row == col)
printf("%d ", 1);
else
printf("%d ", 0);
}
printf("\n");
}
return 0;
}
// Driver Code
int main()
{
int size = 5;
identity(size);
return 0;
}
输出:
1 0 0 0 0
0 1 0 0 0
0 0 1 0 0
0 0 0 1 0
0 0 0 0 1
时间的复杂性 :O(n 2 ) 其中n是矩阵的行数和列数
辅助空间: O(1)