谭浩强C++课后习题20——找二维数组的鞍点

谭浩强C++课后习题20——找二维数组的鞍点

题目描述:找出一个二维数组中的鞍点,即该位置上的元素在该行上最大,在该列上最小(也有可能没有鞍点)。(一个二维数组最多只有一个鞍点,也有可能没有)

算法思路:
先找出一行中值最大的元素,然后检查它是否是该列中的最小值,如果是,则是鞍点,跳出循环,如果不是,则向下一行继续寻找。每次先假设每一行的最大值就是鞍点,如果找到该列有比这个数小的,则不是鞍点,find改为false,如果检查完发现find还是true就说明已经找到鞍点,则跳出循环。

#include<iostream>
using namespace std;
int main() {
	const int n = 4;
	const int m = 5;
	int num[n][m];
	cout << "输入数组:" << endl;
	for (int i = 0;i < n;i++)
		for (int j = 0;j < m;j++)
			cin >> num[i][j];
	bool find;
	int ani = 0, anj = 0;
	for (int i = 0;i < n;i++) {
		ani = i;
		anj = 0;
		for (int j = 0;j < m;j++)
			if (num[i][j] > num[i][anj])
				anj = j;
		find = true;
		for (int k = 0;k < n;k++)
			if (num[k][anj] < num[ani][anj]) {
				find = false;
			}
		if (find) {
			break;
		}
	}
	if (find) {
		cout << "鞍点:num[" << ani << "][" << anj << "]=" << num[ani][anj] << endl;
	}
	else
		cout << "无鞍点" << endl;
	return 0;
}

运行测试结果:
在这里插入图片描述
在这里插入图片描述

  • 11
    点赞
  • 45
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
### 回答1: 抱歉,我是一名语言模型AI,无法回答具体的问题。但是,我可以告诉你《C++程序设计(第三版)》是一本非常经典的C++编程教材,它包含了大量的课后习题,涵盖了C++编程的各个方面,包括基础语法、面向对象编程、数据结构与算法等。如果你正在学习C++编程,这本书是一个非常好的选择。 ### 回答2: 《C程序设计(第三版)》是一本非常经典的计算机编程教材,许多学习计算机编程的人都会选择它作为入门教材。而对于课后习题,可以说是检验一个人是否真正理解了所学知识的重要标志。下面,本文将从几个方面来回答这个问题。 首先,课后习题的数量不少,难度也相对较大。这对于初学者来说可能会是一大挑战,但是克服这些困难也能够让你更好地巩固所学知识和技能,并且为你以后学习编程打下坚实的基础。 其次,这些课后习题内容涵盖了多个方面,如数组、字符串、指针、结构体等。这可以帮助学习者全面地掌握C语言的基本知识和技能,以及扩展知识和编程能力。 再次,这些练习题可以帮助学生更好地理解C程序的运行机理和具体实现,培养他们解决问题和开发C程序的能力。通过解决这些题目,学习者可以加深对函数调用、参数传递、逻辑控制等基本概念的理解,提高代码的编写质量和效率。 最后,还有一点需要指出,那就是课后习题解答不是唯一的。每个人对所学内容的理解和应用都有所不同,因此不同的学生可能会有不同的答案。然而,这些习题是为帮助学习者加深对编程语言的理解和应用而设计的,这也是它们的最重要的目的。因此,无论是类似于《C程序设计(第三版)》这样的教材,还是其他任何类型的学习材料,学生都应该花时间认真对待习题,通过反复练习和思考来提高自己的编程能力。 ### 回答3: 《C程序设计》是一本经典的计算机科学教材,由谭浩强编著。这本书在国内外高等院校中广泛使用,是计算机科学和编程入门的必备之选。该书的课后习题涵盖了广泛的主题,包括算法和数据结构、程序设计、文件处理和输入/输出等。 习题的数量和难度级别适合不同程度的学生,对于初学者来说,可以从简单的习题开始,从而逐渐提高自己的编程技能。对于更有经验的学生,可以尝试更有挑战性的习题,以提高解决问题的能力和编程技术的水平。 在这些习题中,许多涉及实际问题的解决方案,可以帮助学生了解如何将编程技术应用于实际世界中的问题。许多习题也需要学生具备创造性的思维,以提供最佳的解决方案。 总之,谭浩强的《C程序设计》是一本重要的计算机科学教材,提供了广泛的课后习题,可以帮助初学者和有经验的程序员提高他们的编程技能。无论你是准备学习C语言,还是在提高自己的技能,这本书都是一个很好的选择。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值