题目1:二位数组的应用:输入一个3X5的整数矩阵,输出其中的最大值,最小值,和他们的下标
#include<stdio.h>
int main()
{
int a[3][5], max, min, maxi, maxj, mini, minj;
//最大值最小值,和下标分别定义变量存储
int i, j;
for ( i = 0; i < 3; i++)
for (j = 0; j < 5; j++)
scanf_s("%d",&a[i][j],1);
max = a[0][0]; maxi = 0; maxj = 0;
min = a[0][0]; mini = 0; minj = 0;
for (i = 0; i < 3; i++)
for (j = 0; j < 5;j++)
{
if (a[i][j] > max)
{
max = a[i][j]; maxi = i; maxj = j;
/*把它最大的值给max, 然后分别把i和j的元素下标传给其他两个*/
}
if (a[i][j] < min)
{
min = a[i][j]; mini = i; minj = j;
}
}
printf("%d,%d,%d\n",max,maxi,maxj);
printf("%d,%d,%d\n",min,mini,minj);
return 0;
}
题目2:将二维数组a中的每个元素向右边移动一列,最右边一列换到最左边一列,移动后的结果保存在b数组中 并按照矩阵形式输出a和b
#include<stdio.h>
int main()
{
int a[2][3] = { {4,5,6}, {1,2,3} }, b[2][3], i, j;
for (i = 0; i < 2; i++)
{
for (j = 0; j < 3; j++)
{
printf("%5d",a[i][j]);
b[i][j + 1] = a[i][j];
}
printf("\n");
}
for (i = 0; i < 2; i++)
b[i][0] = a[i][2];
for (i = 0; i < 2; i++)
{
for (j = 0; j < 3; j++)
{
printf("%5d", b[i][j]);
}
printf("\n");
}
return 0;
}
标签:练习题,10,minj,烧脑,min,++,max,int,printf
From: https://blog.csdn.net/weixin_52710247/article/details/139307028