C语言基础:求最大公约数与数组输出示例

需积分: 0 5 下载量 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语言语法的熟练度。