首页 > 代码库 > 判断一个10*10的矩阵是否为单位矩阵
判断一个10*10的矩阵是否为单位矩阵
《C和指针》第8章编程练习第3题:
1 /* 2 ** 判断一个10*10的矩阵是否为单位矩阵 3 */ 4 5 #include <stdio.h> 6 #define ROW 10 7 #define COL 10 8 9 /*10 ** 函数接受一个10*10的矩阵11 ** 判断其是否为单位矩阵12 ** 返回值:13 ** 是单位矩阵,返回114 ** 不是单位矩阵,返回015 */16 int 17 indentity_matrix( int (*matrix) [10] )18 {19 int row, col;20 for( row = 0; row < ROW; ++ row )21 for( col = 0; col < COL; ++ col )22 {23 // 如果对角线上出现不是1的数,返回024 if( col == row && matrix[row][col] != 1 )25 return 0;26 // 如果其余位置出现不是0的数,返回027 if( col != row && matrix[row][col] != 0 )28 return 0;29 /*30 ** 上面两个if语句可合并成以下形式:31 ** if( matrix[ row ][ col ] != ( row == col ) )32 ** return 0;33 */34 }35 36 // 能够执行到这里,说明是单位矩阵,返回137 return 1;38 }39 40 int 41 main()42 {43 int m[ROW][COL];44 int i, j;45 46 for( i = 0; i < ROW; ++ i )47 for( j = 0; j < COL; ++ j )48 scanf( "%d", *( m + i ) + j );49 50 printf( "%d", indentity_matrix( m ) );51 52 return 0;53 }
判断一个10*10的矩阵是否为单位矩阵
声明:以上内容来自用户投稿及互联网公开渠道收集整理发布,本网站不拥有所有权,未作人工编辑处理,也不承担相关法律责任,若内容有误或涉及侵权可进行投诉: 投诉/举报 工作人员会在5个工作日内联系你,一经查实,本站将立刻删除涉嫌侵权内容。