阅读下列函数说明和C函数,回答问题1~2,将解答填入栏内。[说明]若矩阵Am×n中存在某个元素aij满足:aij…是第i行中最小值且是第j列中的最大值,则称该元素为矩阵A的一个鞍点。下面程序的功能是输出A中所有鞍点,其中参数A使用二维数组表示,m和n分别是矩阵A的行列数。[程序]void saddle (int A[ ] [ ], int m, int n){ int i,j,min;for (i=0;i <m;i + + ){ min: (1);for (j=1; j<n; j+ +)if(A[i][j

题目

阅读下列函数说明和C函数,回答问题1~2,将解答填入栏内。

[说明]

若矩阵Am×n中存在某个元素aij满足:aij…是第i行中最小值且是第j列中的最大值,则称该元素为矩阵A的一个鞍点。下面程序的功能是输出A中所有鞍点,其中参数A使用二维数组表示,m和n分别是矩阵A的行列数。

[程序]

void saddle (int A[ ] [ ], int m, int n)

{ int i,j,min;

for (i=0;i <m;i + + )

{ min: (1);

for (j=1; j<n; j+ +)

if(A[i][j]<min) (2);

for (j=0; j<n; j+ +)

if ((3))

{ p=0;

while (p<m&&(4))p+ +;

if (p > = m)printf ("%d,%d,%d\n",i,j,min);

}

}

}

[问题1] 将函数代码中的(1)~(4)处补充完整

[问题2]在上述代码的执行过程中,若A为矩阵,则调用saddle(A,3,3)后输出是(5)。


相似考题
更多“ 阅读下列函数说明和C函数,回答问题1~2,将解答填入栏内。[说明]若矩阵Am×n中存在某个元素aij满足:aij…是第i行中最小值且是第j列中的最大值,则称该元素为矩阵A的一个鞍点。下面程序的功能是输出A中所有鞍”相关问题
  • 第1题:

    所谓的n阶下三角矩阵A是指当i<j时(i为元素的行标,j 为元素的列标)元素aij为0或常数C .()


    正确

  • 第2题:

    所谓的下三角矩阵An╳n,是指当i<j时(i为元素的行标,j 为元素的列标)元素aij为0或常数C .()


    正确

  • 第3题:

    编写一个程序合理使用函数,输入m(0<m<10),n(2<n<10),随机生成m个有鞍点的n*n矩阵(每个随机数为包含在0~9之间的整数),输出这些矩阵(鞍点用红色输出)。 提示:矩阵鞍点是指矩阵中的某一点,既是行中的最大值,又是列中的最小值。 矩阵中不一定存在鞍点,也可能有多个鞍点。随机数函数参见《计算机基础与计算思维》6.3.5小节。


    错误

  • 第4题:

    【5-1-3】设A是一个n*n的对称矩阵,将A的对角线及对角线上方的元素以列优先(以列为主序)的方式存放在一维数组B[n(n+1)/2]中,则矩阵中任一元素aij(0<=i,j<n,且i<=j)在B中的位置为()。

    A.j(j+1)/2+i

    B.j(j-1)/2+i-1

    C.i(i+1)/2+j

    D.j(i-1)/2+j-1


    B 解析:aij元素处在第i行第j列位置。上i-1行的元素个数为(1+i-1)(i-1)/2= j(i-1)/2。再加上在i行的i个元素,总共是i(i-1)/2+j

  • 第5题:

    对称矩阵是一个n阶方阵,其元素满足:aij==aji (0≤i,j≤n-1)。


    正确