C 例 7.13 有一个3*4的矩阵,求所有元素中的最大值。
C //例 7.13 有一个3*4的矩阵,求所有元素中的最大值。
C程序设计 (第四版) 谭浩强 例 7.13
例 7.13 有一个3*4的矩阵,求所有元素中的最大值。
IDE工具:VS2010
Note: 使用不同的IDE工具可能有部分差异。
代码块
方法:使用指针、动态分配内存
#include <stdio.h>
#include <stdlib.h>#define M 3
#define N 4void initialMatrix(int ***matrix, int m, int n){*matrix = (int**)malloc(m * sizeof(int*));for(int i = 0; i < m; i++){(*matrix)[i] = (int*)malloc(n * sizeof(int));}
}void inputMatrix(int **matrix, int m, int n){printf("Enter %d*%d matrix:\n", m, n);for(int i = 0; i < m; i++){for(int j = 0; j < n; j++){scanf("%d", &matrix[i][j]);}}
}int max(int **matrix, int m, int n){int max = matrix[0][0];for(int i = 0; i < m; i++){for(int j = 0; j < n; j++){if(matrix[i][j] > max){max = matrix[i][j];}}}return max;
}void outputMatrix(int **matrix, int m, int n, int max(int **, int, int)){printf("Max Value in the matrix is %d\n", max(matrix, m, n));
}void freeMatrix(int ***matrix, int m){for(int i = 0; i < m; i++){free((*matrix)[i]);}free(*matrix);
}int main(){int **matrix = NULL;initialMatrix(&matrix, M, N);inputMatrix(matrix, M, N);outputMatrix(matrix, M, N, max);freeMatrix(&matrix, M);system("pause");return 0;
}
最新文章
- 我的电脑防火墙启动不了 错误0x80070422
- vue预览各种格式图片png jpg tif tiff dcm
- 突破职场竞争,引领未来发展:考取《研发效能(DevOps)工程师职业技术认证》
- navicat创建MySql定时任务
- 深度学习——前馈神经网络(未开始)
- 冒泡排序算法(C++版)
- Vue基础必备掌握知识点
- Java 设计模式——组合模式
- Mozilla 面向基于 Debian 的 Linux 发行版
- 2023云计算发展趋势
- 记录pytorch实现自定义算子并转onnx文件输出
- 第四章 将对象映射到 XML
- 燃气管网监测系统
- 嵌入式杂记
- Maven 插件统一修改聚合工程项目版本号
- logrotate 进行日志切割
- Unity Hub无法登陆的两种终极解决办法