一、终端输入二维数组中的元素,求二维数组中第二大值,及其行标列标
#include<stdio.h>
int main(int argc, const char *argv[])
{
int arr[2][3]={0};
int i,j;
int max2_i=0,max2_j=0;
int max_i=0,max_j=0;
//终端输入
for(i=0;i<2;i++)
{
for(j=0;j<3;j++)
{
scanf("%d",&arr[i][j]);
}
}
//找最大值的行列下标
for(i=0;i<2;i++)
{
for(j=0;j<3;j++)
{
if(arr[max_i][max_j]<arr[i][j])
{
max_i=i;
max_j=j;
}
}
}
//找第二最大值的行列下标
for(i=0;i<2;i++)
{
for(j=0;j<3;j++)
{
if(i==max_i&&j==max_j)
{
continue;
}
if(arr[max2_i][max2_j]<arr[i][j])
{
max2_i=i;
max2_j=j;
}
}
}
//打印输出
printf("最大值=%d,在第%d行,第%d列\n",arr[max_i][max_j],max_i+1,max_j+1);
printf("第二最大值=%d,在第%d行,第%d列\n",arr[max2_i][max2_j],max2_i+1,max2_j+1);
return 0;
}
二、思维导图
三、杨辉三角