记录一下,加深印象;
note:通过声明一个布尔变量flag来判断这个数是否存在;
using namespace std;
int main() {
bool flag; //声明一个布尔变量;
const int n = 3, m = 3; //定义常变量行和列
int i, j;
int a[n][m];
int k, max, maxj; //maxj为该行最大值的列标
cout << "input:";
for (i = 0; i < n; i++) {
for (j = 0; j < m; j++) {
cin >> a[i][j];
}
}
for (i = 0; i < n; i++) //求出该行的最大值的列下标;
{
max = a[i][0];
for (j = 0; j < m; j++) {
if (a[i][j] > max) {
max = a[i][j];
maxj = j;
}
}
flag = true; //默认flag为真
for (k = 0; k < n; k++) //判断该行是否是其所在列的最小值;
{
if (max > a[k][maxj]) {
flag = false; //如果不是最小,继续下一行(i=1)的内循环
}
}
if (flag) //如果是最小,则输出
{
cout << "a[" << i << "][" << maxj << "]=" << max;
cout << endl;
break;
}
}
if (!flag) {
cout << "not find!";
}
return 0;
}
因篇幅问题不能全部显示,请点此查看更多更全内容