以下程序中,select函数的功能是:在N行M列的二维数组中,选出一个最大值作为函数值返回,并通过形参传回此最大值所在的行下标。请填空。 #define N 3 #define M 3 select(int a[N][M],int *n)

admin2010-01-10  49

问题 以下程序中,select函数的功能是:在N行M列的二维数组中,选出一个最大值作为函数值返回,并通过形参传回此最大值所在的行下标。请填空。
   #define N 3
   #define M 3
   select(int a[N][M],int *n)
   { int i,j,row=1,colum=1;
     for(i=0;i<N;i++)
      for(j=0;j<M;j++)
        if(a[j]>a[row][colum]){row=i;colum=j;}
          *n= 【  】;
          return( 【  】);
   }
   main()
   { int a[N][M]={9,11,23,6,1,15,9,17,20},max,n;
     max=select(a,&n);
     printf(“max=%d,line=%d\n”,max,n);
   }

选项

答案row a[row][colum]

解析 指针变量作为函数参数及二维数组的一个典型算法——求最大值及其下标。通过对题意的分析,在select()函数中,变量row的作用是用来记录最大元素的行下标, colum的作用是用来记录最大元素的列下标。程序中通过一个循环求得数组元素中最大值的行列下标,分别存放在变量row和colum中,根据题意,应该把行下标赋值给形参指针变量n指向的变量,把最大值a[row][colum]作为函数值返回。
转载请注明原文地址:https://jikaoti.com/ti/k8I0FFFM
0

相关试题推荐
最新回复(0)