首页 > 代码库 > 判断一个任意大小的矩阵是否为单位矩阵
判断一个任意大小的矩阵是否为单位矩阵
《C和指针》第8章编程练习第4题:
修改前一个问题中的 identity_matrix 函数,它可以对数组进行扩展,从而能够接受任意大小的矩阵参数。函数的第1个参数应该是一个整型指针,你需要第2个参数,用于指定矩阵的大小。
1 /* 2 ** 判断一个矩阵是否为单位矩阵 3 ** 矩阵为任意大小 4 */ 5 6 #include <stdio.h> 7 #define SIZE 4 8 9 /*10 ** 函数接受任意大小矩阵参数,判断它是否为单位矩阵11 ** 形参:12 ** 第1个参数为一个整型指针,指向矩阵中第一个元素&matric[0][0]13 ** 第2个参数为矩阵的大小14 ** 返回:15 ** 是单位矩阵,返回116 ** 不是单位矩阵,返回017 */18 int 19 indentity_matrix_anysize( int *matrix, int mtx_size )20 {21 int row, col;22 for( row = 0; row < mtx_size; ++ row )23 for( col = 0; col < mtx_size; ++ col )24 {25 if( row == col && *( matrix + row * mtx_size + col ) != 1 )26 return 0;27 if( row != col && *( matrix + row * mtx_size + col ) != 0 )28 return 0;29 }30 return 1;31 }32 33 int34 main()35 {36 int matrix[SIZE][SIZE];37 38 int i, j;39 for( i = 0; i < SIZE; ++ i )40 for( j = 0; j < SIZE; ++ j )41 scanf( "%d", & matrix[i][j] );42 43 printf( "%d", indentity_matrix_anysize( matrix[0], SIZE ) );44 45 return 0;46 }
判断一个任意大小的矩阵是否为单位矩阵
声明:以上内容来自用户投稿及互联网公开渠道收集整理发布,本网站不拥有所有权,未作人工编辑处理,也不承担相关法律责任,若内容有误或涉及侵权可进行投诉: 投诉/举报 工作人员会在5个工作日内联系你,一经查实,本站将立刻删除涉嫌侵权内容。