C和指针之数组编程练习3(判断矩阵是否为单位矩阵)

来源:互联网 发布:淘宝客高佣金采集软件 编辑:程序博客网 时间:2024/06/06 05:38

1、题目

3.单位矩阵就是一个正方形矩阵,它除了主对角线元素值为1以外,其余元素的值均为0,例如:
 *1 0 0
 *0 1 0
 *0 0 1
 *就是一个3×3单位矩阵,编写一个名叫identity_matrix的函数,它接受一个10×10整型矩阵为参数
 *成功返回1,失败返回1

4、修改前一个问题中的identity_matrix函数,它可以对数组进行扩展,从而能够接受任意大小的矩阵参数。函数的第一个参数应该是一个整型指针,你需要第二个参数,用于指定矩阵的大小。
  



2、代码实现

#include <stdio.h>/* *3.单位矩阵就是一个正方形矩阵,它除了主对角线元素值为1以外,其余元素的值均为0,例如: *1 0 0 *0 1 0 *0 0 1 *就是一个3×3单位矩阵,编写一个名叫identity_matrix的函数,它接受一个10×10整型矩阵为参数 *成功返回1,失败返回1 **/int identity_matrix(int (*matrix)[10]){    for (int i = 0; i < 10; ++i)        for (int j = 0; j < 10; ++j)        {            if (i == j)            {                if (matrix[i][j] != 1)                    return 0;            }            else            {                if (matrix[i][j] != 0)                    return 0;            }        }    return 1;}                  /**4、修改前一个问题中的identity_matrix函数,它可以对数组进行扩展,从而能够接受任意大小的矩阵参数。 *    函数的第一个参数应该是一个整型指针,你需要第二个参数,用于指定矩阵的大小。 *       */             int identity_matrix1(int *matrix,int n){    int row;    int column;    for (row = 0; row < n; row++)    {        for (column = 0; column < n; column++)        {            if (*matrix++ != (row == column))                return 0;        }    }    return 1;}int main(){    int matrix[10][10] = {{1, 0}, {1}, {1}, {1}, {1},    {1, 0, 0}, {0, 1, 0}, {0, 0, 1}, {1}, {1}};    int result = identity_matrix(matrix);    printf("result is %d\n", result);    int result1 = identity_matrix1(matrix, 10);    printf("result1 is %d\n", result1);    return 0;}









3、运行结果

1111deMacBook-Pro:dabian a1111$ vim identity_matrix.c1111deMacBook-Pro:dabian a1111$ gcc -w -g identity_matrix.c -o identity_matrix1111deMacBook-Pro:dabian a1111$ ./identity_matrixresult is 0result1 is 0








原创粉丝点击
热门问题 老师的惩罚 人脸识别 我在镇武司摸鱼那些年 重生之率土为王 我在大康的咸鱼生活 盘龙之生命进化 天生仙种 凡人之先天五行 春回大明朝 姑娘不必设防,我是瞎子 幼儿园小朋友上课调皮怎么办 孩子误冲游戏怎么办 遇到别的熊孩子怎么办 幼儿园遇到熊孩子怎么办 高铁上遇到熊孩子怎么办 幼儿爱打人家长怎么办 妈妈爱打孩子怎么办 35儿童爱打人怎么办? 一岁半宝宝太调皮怎么办 儿子高一不听话怎么办 小孩说了不听话怎么办 我的妈妈文盲怎么办 电脑键盘反拼音怎么办 小孩学习态度差怎么办 孩子不好好上学怎么办 小孩读书态度不好怎么办 幼儿园孩子不认识数字怎么办 一年级孩子拼音很差怎么办 孩子的拼音不好怎么办 小孩不会拼拼音怎么办 小孩拼音学不会怎么办 儿童l发音不准怎么办 小孩发音不标准怎么办 拼音l发音不准怎么办 孩子拼音声调分不清怎么办 小孩gk读成dt怎么办 拼音音调学不会怎么办 会拼音不会打字怎么办 大人拼音学不会怎么办 志愿服务经历少怎么办 医保报销发票丢失怎么办 费用发票丢失了怎么办 小孩乱拿东西怎么办 在家突然生了怎么办 二胎在家生的怎么办? 奶有一边没有怎么办 孩子应用题很弱怎么办 做不到不嫉妒怎么办 小孩自律太差怎么办 小学四年级数学差怎么办 孩子应用题做不好怎么办