c 简单小程序问题

来源:百度知道 编辑:UC知道 时间:2024/06/30 03:26:55
# include<stdio.h>
void main()
{
int a[2][3];
int i,j,min,colum,row;
for(i=0;i<2;i++)
for(j=0;j<3;j++)
scanf("%d",&a[i][j]);
min=a[0][0];
clrscr();
for(i=0;i<2;i++)
for(j=0;j<3;j++)
if(min>a[i][j])
{
min=a[i][j];
row=i;
colum=j;
}

printf("min=%d,row=%d,colum=%d\n",min,row,colum);

}
当我输入1 2 3 4 5 6 时
输出的是: min=1,row=28775,colum=5946
请问我的问题在哪儿??为什么??谢谢了

row和colum没有给定初值 因为你输入的数中1最小,则相当于第二个双重循环中if语句从来没有执行过 在定义row和colum的时候都给个0值就行了另外我觉得clrscr(); 这句话好象是多余的

if(min>a[i][j])
判断语句改为 if(min>=a[i][j])
因为当你本身就是最小数时,并没有作比较,所以ROW和COLUMN就没有赋值