C語言獲取矩陣的最大值及其下標
本實例要求使用二維數組將一個 3×4 的矩陣中所有元素的最大值及其下標獲取,通過該程序,掌握二維數組的引用知識。
算法思想
針對本實例,有兩個步驟需要編寫程序完成:第一個步驟是求矩陣元素的最大值,可以通過相鄰的元素大小比較,最終獲取最大值;第二個步驟是針對獲取到的元素最大值,求該元素的下標。
二維數組元素的一般表示方法為:“數組名[下標][下標]”。對于二維數組,下標變量和數組說明在表示形式上是一樣的,比如在本例中,有語句:int a[3][4]; a[3][4]=2/3;
上述語句中“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;
}</stdio.h>
調試運行結果
本實訓的程序主要完成了兩個功能:一是通過一個二次循環輸入該二維數組的所有元素;二是將輸入元素按照相鄰關系進行比較,最終得到最大值和這個最大值的下標。如果輸入數組是:1 2 3 4 5 6 7 99 9 10 11 12。則最終輸出結果如下所示:
1 2 3 4 5 6 7 99 9 10 11 12
max=a[1][3]=99
- C語言統計單詞個數,單詞個數算法
- 在實際生活中經常會遇到一個問題:寫英語作文時,常常要求滿足一定的字數。在以往,要么我們一個一個地數;要么我們估算一行的單詞數,
- 03-09 關注:0
- C語言獲取矩陣的最大值及其下標
- 本實例要求使用二維數組將一個 3×4 的矩陣中所有元素的最大值及其下標獲取,通過該程序,掌握二維數組的引用知識。
- 03-09 關注:0
- C語言誰家孩子跑得最慢
- 張、王、李三家各有三個小孩。一天,三家的九個孩子在一起比賽短跑,規定不分年齡大小,跑第一得 9 分,跑第二得 8 分,依次類推。
- 03-09 關注:0
- C語言狼追兔子問題
- 一只兔子躲進了 10 個環形分布的洞的某一個,狼在第一個洞沒有找到兔子,就隔一個洞,到第三個洞去找
- 03-09 關注:0
- C語言兔子生兔子問題
- 假設一對兔子的成熟期是一個月,即一個月可長成成兔,那么,如果每對成兔每個月都生一對小兔
- 03-09 關注:0
- C語言矩陣轉置
- 本實例是利用數組解決線性代數中的矩陣轉置問題。
- 03-09 關注:0
- C語言求回文素數
- 任意的整數,當從左向右讀與從右向左讀是相同的,且為素數時,稱為回文素數。求 1000 以內的所有回文素數。
- 03-09 關注:0