注册 登录
编程论坛 新人交流区

这个程序有什么问题吗?

yuanbw 发布于 2007-11-16 02:50, 1067 次点击
#include <iostream.h>
void saddle(int m,int n,int A[][])
{
int i,j,min,k,p;
for(i=0;i<m;i++)
{
min=A[i][0];
for(j=1;j<n;j++)
if(A[i][j]<min)
min=A[i][j];
for(j=0;j<n;j++)
if(A[i][j]==min)
{
k=j;
p=0;
while(p<m&&A[p][j]<=min)
p++;
if(p>=m)
cout<<i<<k<<min<<endl;
}
}
}
void main()
{
int A1[][3]={{10,9,15},{4,5,6},{7,8,9}};
saddle(A1[3][3],3,3);
}
13 回复
#2
panicemaster2007-11-16 09:33
fuza  看不懂
#3
visualcitybo2007-11-16 11:15
有问题!参数传递有问题
#4
文刀破心2007-11-16 11:18
呵呵 我也看不懂
还是太菜了
老师还没讲这里
#5
文刀破心2007-11-16 11:37
没嘛问题啊
貌似
#6
yayaya8882007-11-16 11:40
回复:(yuanbw)这个程序有什么问题吗?
#7
qjanlwjtxg2007-11-16 11:49

这个是C++的问题.要到C++去看看吧

#8
bozl2007-11-16 12:11
#include <iostream>
using namespace std;
void saddle(int a[][3],int m,int n)
{
int i,j,min,k,p;
for(i=0;i<m;i++)
{
min=a[i][0];
for(j=1;j<n;j++)
if(a[i][j]<min)
min=a[i][j];
for(j=0;j<n;j++)
if(a[i][j]==min)
{
k=j;
p=0;
while(p<m&&a[p][j]<=min)
p++;
if(p>=m)
cout<<i<<k<<min<<endl;
}
}
}
void main()
{
void saddle(int a[][3],int m,int n);
int a1[][3]={{10,9,15},{4,5,6},{7,8,9}};
saddle(a1,3,3);
}
#9
bozl2007-11-16 12:11

上面是我调试成功的!!

#10
phb7112007-11-16 12:22
晕死,很明显不能传数组
数据在函数间传递只能用指针
void saddle(int **a,int m,int n)
#11
angelwait2007-11-16 12:40

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

saddle(A1[3][3],3,3);
形参和实参不一致啊。
实参数组放最后面

#12
henven2007-11-16 13:01

晕,太高深了,我才学

#13
feibiaili2007-11-17 02:33
8楼的程序是正确的。
这个程序大概的意思是在m*n的二维数组中找到符合下面条件的数,
1。在一行中它最小;
2。在一列中它最大;
不知道楼主原意是不是这样
#14
1234什么2007-11-17 21:58
看不懂
1