C++(.有一个矩阵,编程求其中值最大的那个元素的值,以及其所在的行号和列号。)

在线等。求高手。。。。

你用一个二元数组a[i][j]来存储你这个矩阵,i和j的值,根据矩阵的行数和列数进行选择。
再将每一行,每一列的值存入这个二元数组。例如第一行第一列和值为5,即a[0][0]=5.
然后定义一个变量x,将a[0][0],即矩阵的第一值的数值赋给它。最后做一个for的二次循环,
依次拿矩阵的每个值和和x的值进行大小比较,如果x大,保持不变。如果x小,就将此时的a[i][j]的那个值附给x。并用两个变量a和b来做行列记录,将i和j和值分别附给a,b。循环完成后,x的值就是元素值最大的那个,a,b就是这个元素所在行和列的值。你再把它打印输出就行了。
温馨提示:内容为网友见解,仅供参考
第1个回答  2011-05-26
void fun(int data[3][4], int n, int m) //n=3 m=4
{ int i,j,k1,k2,max;
max=data[0][0]; k1=0; k2=0;
for(i=0;i<n;i++)
for(j=0;j<m;j++)
{ if( data[i][j] > max ) { max=data[i][j], k1=i; k2=j; }
printf("i=%d j=%d max=%d", k1, k2, max);
}
第2个回答  2011-05-26
楼上答案是正确的,我也不用再写一遍了,只要用两个循环就可以搞定的;外加一句,楼上的不是c++,呵呵,这不是重点

C++(.有一个矩阵,编程求其中值最大的那个元素的值,以及其所在的行号和列...
再将每一行,每一列的值存入这个二元数组。例如第一行第一列和值为5,即a[0][0]=5.然后定义一个变量x,将a[0][0],即矩阵的第一值的数值赋给它。最后做一个for的二次循环,依次拿矩阵的每个值和和x的值进行大小比较,如果x大,保持不变。如果x小,就将此时的a[i][j]的那个值附给x。

...有一个3×4的矩阵,要求输出其中值最大的元素的值,以及它的...
int max,i,j,a,b;没有初始化啊,由于你的max=s[0][0];是最大的if你们的永远不会运行,于是a,b不会被赋值,报错必然啊。include<stdio.h> int main(){ int max,i,j,a,b;max=i=j=a=b=0;static int s[3][4]={{154,88,35,5},{6,4,2,88},{-84,-44,2,47}};max=s...

有一个3*4的矩阵,要求输出其中值最大的元素的值,以及它的行号和列号
cout<<"其所在的行号是:"<<"第"<<h<<"行"<<endl<<"其所在的列是:"<<"第"<<l<<"列"<<endl;return 0;} 举例:输入:1234 9876 -1010-52 输出:10 2 3

c++返回二维数组的最大元素和它所在的行、列号?
cout << "数组的最大元素为:" << maxVal << endl;cout << "它所在的行号为:" << row + 1 << endl; \/\/ 行号从 1 开始 cout << "它所在的列号为:" << col + 1 << endl; \/\/ 列号从 1 开始 return 0;} ```在上述代码中,我们定义了一个常量 `ROWS` 和 `COLS`,分别...

...矩阵,求其中最大值和最小值,以及它们的行号和列号。用C语言编写程序...
include<stdio.h>int main(){int m,n,i,j,maxi,maxj,mini,minj; scanf("%d%d",&m,&n); int a[m][n]; maxi=maxj=mini=minj=0; for(i=0;i<m;i++) for(j=0;j<n;j++) {scanf("%d",&a[i][j]); if(a[i][j]>a[maxi][maxj]){maxi=i;maxj=j;} if...

c++编程求一个矩阵的每一行的和
intN=行号;\/\/行号列号自己定义intM=列号;intmatrix[N][M];\/\/自己初始化intA[M]={0};intB[M]={0}\/\/获取矩阵第二行和倒数第二行数据for(inti=0;i

...输出其中值最大的元素值,以及它的行号和列号(C语言编程)
printf("数组为:\\n");for(i=0;i<3;i++){ for(j=0;j<4;j++)printf("%4d",a[i][j]);printf("\\n");} for(i=0;i<3;i++){ for(j=0;j<4;j++){ if(a[i][j]>max){ max=a[i][j];row=i;colum=j;} } } printf("最大值为:%d;行号为:%d,列号为:%d",...

一个写好的矩阵我想利用一个C++程序使这个矩阵能把第二行的数赋值给第...
int N = 行号; \/\/行号列号自己定义 int M = 列号;int matrix[N][M]; \/\/自己初始化 int A[M] = {0};int B[M] = {0} \/\/获取矩阵第二行 和倒数第二行数据 for (int i = 0; i < N; i++) { if (1 == i) { for (int j = 0; j < M; j++) { A[j] = ...

用c++编写
按下列要求编写程序:输入一个6*6的二维整形数组,并输出该数组的平均值、最大元数值、最大元数所在的行号和列号。具体要求:(1)为一个6*6的二维整形数组输入数据的任务由函数Input()完成。该函数用二维数组和二维数组的函数做形参,无返回值。(2)计算一个6*6的二维整形数组的平均值的任务由...

有一个4*5矩阵,用MATLAB编程求出其最大值及其所在的位置
MATLAB 中的 max 函数是求最大值的函数。1、如果 A 是向量,则 max(A) 返回 A 的最大值。2、如果 A 为矩阵,则 max(A) 是包含每一列的最大值的行向量。3、如果 A 是多维数组,则 max(A) 沿大小不等于 1 的第一个数组维度计算,并将这些元素视为向量。此维度的大小将变为 1,而...

相似回答