C语言基础:求最大公约数与数组输出示例
需积分: 0 156 浏览量
更新于2024-09-12
收藏 13KB DOCX 举报
本资源主要介绍了C语言基础编程中的两个核心概念:求最大公约数以及分数类(Fraction)的实现。我们将通过详细解析这两部分来深入理解C语言在这些领域的应用。
**一、最大公约数计算**
在提供的代码片段中,我们看到的是一个名为`exer1_1`的程序包,其中有一个`exer1_1`类,用于计算两个整数的最大公约数(GCD)。这个算法使用了欧几里得算法(Euclidean algorithm),也称为辗转相除法。关键部分包括以下步骤:
1. 首先,创建`Scanner`对象`in`来获取用户输入的两个整数`a`和`b`。
2. 检查`a`是否小于`b`,若成立,交换它们的值,确保`a`始终大于或等于`b`。
3. 计算余数`r`,即`a`除以`b`的余数,更新`a`为`b`,`b`为`r`。
4. 当余数`r`不为0时,重复步骤3,直到余数为0,此时`b`就是最大公约数。
5. 使用`System.out.println`输出结果:“最大的公约数是:”后面跟随计算出的最大公约数`b`。
**二、分数类(Fraction)的实现**
接下来是`Fraction`类,它用于表示分数。类中包含两个私有成员变量`fz`和`fm`分别代表分子和分母。该类有两个方法:
1. `Fraction(int fz, int fm)`构造函数,接受分子`fz`和分母`fm`作为参数,并初始化这两个属性。
2. `int zdgys()`方法,用于计算分数的最简形式,即约简分数。它同样采用了辗转相除法的思想,找到分子和分母的最大公约数(`zdgys`),然后将分子和分母分别除以最大公约数,直到不能再约简。最后返回分母,因为最简分数的分母是不能被约简的。
在`Text1`类的`main`方法中,实例化了一个`Fraction`对象`obj`,并调用`hj()`方法,此方法会打印出给定分数的最简形式,格式为分子/分母。
总结来说,这部分C语言代码展示了如何在基础编程中处理数值操作,如寻找最大公约数,并将这些概念应用到更复杂的数据结构(如分数)上。理解和掌握此类基础操作对于深入学习C语言和其他编程语言至关重要,因为它们是构建更大规模程序的基础。通过编写和实践这样的代码,你可以提高你的逻辑思维能力和对C语言语法的熟练度。
2011-03-29 上传
2010-11-03 上传
点击了解资源详情
点击了解资源详情
pinganyisheng896
- 粉丝: 1
- 资源: 1
最新资源
- express-simple-template:是一个简单的模板,用于日志记录和测试bdd
- flopbox:通过 HTTP 传输文件,只需将您的文件翻过来
- 待办事项清单:待办事项清单
- 界面专业的VC++流量监控程序
- 这是一个仅供个人学习的电商项目(Spring Cloud 2+MySql+JPA+Redis+ Golang+Gin.zip
- 物联网湿度和温度显示-项目开发
- blog-template
- AndreyC101-GAME2005-F2020-FinalTest-101255069:GAME2005-游戏物理决赛
- meteor-mailchimp-custom:自定义和添加的表单字段操作
- 这是我在学习java时候写的一个最最简单的小爬虫,用来爬知乎的标题,然后存储的在mysql.zip
- VC++ TCP 方式实现MYQQ
- action-notify:涡轮行动通知
- react-reality-holokit:Holokit绑定用于React现实
- riemann-test-prototype:编写和测试 Riemann 配置的另一种方法
- terraform-azure-poc
- haku0x666