建立一个3*3的矩阵,并求出矩阵中的最小值以及最小值所在的行号和列号。矩阵元素由键盘输入。
#include <stdio.h>
int main(){
int A[3][3];
int i,j;
for(i = 0; i < 3; ++i){
for(j = 0; j < 3; ++j){
scanf("%d",&A[i][j]);
}
}
int MIN = A[0][0];
int I = 0,J = 0;
for(i = 0; i < 3; ++i){
for(j = 0; j < 3; ++j){
if(A[i][j] < MIN){
MIN = A[i][j];
I = i;
J = j;
}
}
}
printf("%d\n", MIN);
printf("%d,\t%d\n", I + 1, J + 1); //行号和列号是对应索引号加1,比如第一行对应的索引为0
return 0;
}
没有要求的话,直接遍历数组啊
#include<stdio.h>
int main(){
printf("输入一个3*3的矩阵"\n);
int arr[3][3];
for(int i=0;i<3;i++){
for(int j=0;j<3;j++){
scanf("%d",&arr[i][j]); //输入程序
}
}
int min=arr[0][0]; //设置出最小的
int minx=0;
int miny=0; //用来记录下标
//遍历数组判断
for(int i=0;i<3;i++){
for(int j=0;j<3;j++){
if(arr[i][j]<min){
min=arr[i][j]; //更新最小的
minx=i+1;
miny=j+1; //下标从0 开始
}
}
}
printf("%d,%d,%d",min,minx,miny);
return 0;
}