C语言“最大公约数和最小公倍数”代码讲解
操作方法
(01)首先打开CodeBlocks,创建一个新项目。项目语言,选择“c”, 我们将项目名称命名为“MaxAndMin”,然后下一步,“finish”。
(02)创建好项目后,我们打开 “main.c”文件。在这里我们先分析一下题目。输入两个正整数m和n,求最大公约数和最小公倍数此程序要求 输入两个数,处理后,输出两个结果。这里我们继续用到 自定义函数 分别来完成最大公约数和最小公倍数。
(03)首先是main函数部分,我们完成输入功能其中m和n是输入的两个数,num是将来存储的最大公约数。num的值是由后面我们定义的函数,来赋值的。
(04)这里为了能更加严谨,我们要强制用户输入正确的数for(;;)表示一个死循环 同样使用while(true)也可达到死循环效果。在循环中要求用户多次输入,直到用户输入合法的数值
(05)接下来,当用户输入合法之后。我们就要写else的情况了。但在写之前,我们先要将计算最大公约数和最小公倍数的函数定义出来(详细见图)
(06)首先是最大公约数其中r用来存储余数。这里我们简单说一下算法过程。 首先我们将m和n求余数(谁大谁小不影响)。当得到的余数r不是0,就表示 m和n之间不是倍数关系。那么我们将m的值改为n,n中从存取r 再次执行r=m%n 。意思就是,反复的用余数取模余数,直到0位置。就是n中存的就为最大公因数了。
(07)最后是,最小公倍数函数,很简单,利用公式(m*n)/最大公约数,很快就能得到结果。这就免除了麻烦的计算过程
(08)最后,回到main中,我们将代码补全。在else中 分别调用两个函数。这样代码就完成了。以下为main函数中的代码
(09)接下来运行,我们输入 6,3 其中3就是最大公因数,6是最小公倍数。到这里就结束了。但其实代码还存在问题。当我们输入的数没有公因数时,就出bug。这个自己可以开动脑筋去解决。
-
远古海洋超强霸主 巨齿鲨的天敌是谁(顶级掠食者)
导语:在巨齿鲨的时代,海洋中所有的生物都可以是它的食物,但是鲸类是它最为偏爱的种类,在古生物学家看来,这种生物是当时的顶级掠食者,似乎一直处于食物链顶端,它们的锋利的牙齿和咬合力都是对抗敌人的关键,可能只有梅尔维尔鲸能够和它一决高下,和探秘志一起了解一下。巨...
-
世界价格最贵的猫:阿什拉猫17万一只(身高1.2米混血猫)
导语:猫咪是十分惹人喜爱的动物,很多人都对这种动物十分喜爱。关于世界最大的猫,世界最小的猫大家都有所了解,那么世界最贵的猫大家知道吗?世界上最贵的猫是17万一只的阿什拉猫,下面和探秘志小编一起来了解一下吧。世界价格最贵的猫:阿什拉猫阿什拉猫是世界上价格最...
-
扑街是什么意思?粤语中骂人的词,源自英文Poor guy
解答:扑街主要表达3种意思:1.原意是走路被绊倒,扑倒在马路上;2.游戏中角色死亡,或者指乞丐;3.粤语中的“仆街”同意,源自外语中的“poorguy”,本意是骂人,也可表达一种倒霉的意思。扑街是什么意思?1.古文中扑街是扑倒在路上是指走路被绊倒,“扑”是扑倒,“街”是在街上...
-
十大战斗力最强恐龙 恐龙中最厉害的第一名是谁
导语:恐龙是一种战斗力极强的史前生物,其中最凶猛的就是十大战斗力最强恐龙,它们分别是西雅茨龙,南方巨兽龙,诸城暴龙,鲨齿龙,蛮龙,马普龙,特暴龙,棘龙,沧龙,霸王龙,探秘志带大家看看吧。1、西雅茨龙第一个上榜十大战斗力最强恐龙的是西雅茨龙,这种恐龙主要生活在白垩纪中期...