方法一:常规计算
#include<stdio.h>
#define m 3
#define n 4
void main(){
int i,j;
int a[m][n];
int max=0,min=0;
int max_p1=0,max_p2=0;
int min_p1=0,min_p2=0;
for(i=0;i<m;i++){
for(j=0;j<n;j++){
printf("请输入第%d行第%d列数字:",i+1,j+1);
scanf("%d",&a[i][j]);
}
}
max=min=a[0][0];
for(i=0;i<m;i++){
for(j=0;j<n;j++){
if(a[i][j]>max){
max=a[i][j];
max_p1=i;
max_p2=j;
}
if(a[i][j]<min){
min=a[i][j];
min_p1=i;
min_p2=j;
}
}
}
printf("第%d行第%d列为最大值\n",max_p1+1,max_p2+1);
printf("最大值为:%d\n",max);
printf("第%d行第%d列为最小值\n",min_p1+1,min_p2+1);
printf("最小值为:%d",min);
}
方法二:函数调用
#include<stdio.h>
#define m 3
#define n 4
void max_and_min(int a[m][n]){
int i,j;
int max=0,min=0;
int max_p1=0,max_p2=0;
int min_p1=0,min_p2=0;
max=min=a[0][0];
for(i=0;i<m;i++){
for(j=0;j<n;j++){
if(a[i][j]>max){
max=a[i][j];
max_p1=i;
max_p2=j;
}
if(a[i][j]<min){
min=a[i][j];
min_p1=i;
min_p2=j;
}
}
}
printf("第%d行第%d列为最大值\n",max_p1+1,max_p2+1);
printf("最大值为:%d\n",max);
printf("第%d行第%d列为最小值\n",min_p1+1,min_p2+1);
printf("最小值为:%d",min);
}
int main(){
int a[m][n];
int i,j;
for(i=0;i<m;i++){
for(j=0;j<n;j++){
printf("请输入第%d行第%d列数字:",i+1,j+1);
scanf("%d",&a[i][j]);
}
}
max_and_min(a);
return 0;
}