赞
踩
输入一个n×m的整数矩阵(n<=10,m<=10),然后输出其中的最大值、最小值,并输出这两个值的下标。
输入格式:
输入矩阵的行数n和列数m(n<=10,m<=10),然后输入所有矩阵中的数据。
输出格式:
第一行输出n×m的数组中的最大值及其下标。每两项之间一个空格。 第二行输出n×m的数组中的最小值及其下标。每两项之间一个空格。 (如果有相同的最大的数,要求输出行列最小,行优先)
输入样例:
在这里给出一组输入。例如:
3 4
65 77 21 88
23 99 18 54
19 82 73 99
输出样例:
在这里给出相应的输出。例如:
max=99 row=1 col=1
min=18 row=1 col=2
#include<stdio.h> #include<string.h> int main (){ int a,b; scanf("%d %d",&a,&b); int str[a][b]; int m=0,n=0; int q=0,w=0; int max,min; scanf("%d",&str[0][0]);//要先输入[0][0],没初始化的话就 //不知道这个数是比你输入的最大还大还是比最小的还小, //这种情况下就不一定能得到正确结果 max=min=str[0][0]; for(int i=0;i<a;i++){ for(int j=0;j<b;j++){ if(i==0&&j==0)continue;//这步也要有,前面已经输入[0][0]了 //没有的话就[0][0]就重新输入成[0][1]了, //与最开始的初始化值不对 scanf("%d",&str[i][j]); if(str[i][j]>max){ max=str[i][j]; m=i; n=j; } if(str[i][j]<min){ min=str[i][j]; q=i; w=j; } } } printf("max=%d row=%d col=%d\n",max,m,n); printf("min=%d row=%d col=%d",min,q,w); return 0; }
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。