本实例要求使用二维数组将一个 3×4 的矩阵中所有元素的最大值及其下标获取,通过该程序,掌握二维数组的引用知识。 算法思想针对本实例,有两个步骤需要编写程序完成: ✿ 第一个步骤是求矩阵元素的最大值,可以通过相邻的元素大小比较,最终获取最大值; ✿ 第二个步骤是针对获取到的元素最大值,求该元素的下标。
上述语句中“a[3][4]”是完全不同的两个概念,第一个语句中的“a[3][4]”用来定义一个数组,而第二个语句中的“a[3][4]”是一个双下标变量。 程序代码#include <stdio.h>int main(){ int a[3][4],i,j,max,max_i=0,max_j=0; for(i=0;i<3;i++) for(j=0;j<4;j++) scanf('%d',&a[i][j]); max=a[0][0]; for(i=0;i<3;i++) for(j=0;j<4;j++) if(a[i][j]>max) { max=a[i][j]; max_i=i; max_j=j; } printf('max=a[%d][%d]=%d\n',max_i,max_j,max); return 0;} 调试运行结果本实训的程序主要完成了两个功能: ✿ 一是通过一个二次循环输入该二维数组的所有元素; ✿ 二是将输入元素按照相邻关系进行比较,最终得到最大值和这个最大值的下标。 如果输入数组是:1 2 3 4 5 6 7 99 9 10 11 12。则最终输出结果如下所示:
不管你是转行也好,初学也罢,进阶也可,如果你想学编程,进阶程序员~ 【值得关注】我! |
|