C语言基础-编写求两个整数最大公约数的函数,并调用此函数求两个整数的最大公约数和最小公倍数。(头文件、方法主体、主函数,分离)

简介: 这是我个人学习c语言的练习,如果对你有帮助,请关注我,我将不定期更新,如果疑问或者建议可以在评论区留言沟通。
+关注继续查看
我将头文件、方法主体、主函数分离,写在上文件里,一个头文件(c043-mymath.h),一个方法主体函数文件(c043-mymath.c),一个主函数文件(c043-mymath_test.c),把三个文件放一起。

头文件(c043-mymath.h)

/*
*Copyright(c)2018 V万能的小黑V
*文件名:c04-mymath.h
*描述:计算最大公约和最小公倍数头文件
*作者:V万能的小黑V
*日期:2018年11月22日
*当前版本:1.0
*/
/*
*函数名称:hcf
*描述:实现最大公约
×作者:V万能的小黑V
×完成日期:2018年11月22日
×输入:输入两个整型
×当前版本:1.0
*/
int hcf(int x,int y);
/*
*函数名称:lcm
*描述:实现最小公倍数
×作者:V万能的小黑V
×完成日期:2018年11月22日
×输入:输入两个数字
×当前版本:1.0
*/
int lcm(int x,int y,int l);

方法主体(c043-mymath.c)

/*
*Copyright(c)2018 V万能的小黑V
*文件名:c043-mymath.c
*描述:最大公约和最小公倍数运算
*作者:V万能的小黑V
*日期:2018年11月22日
*当前版本:1.0
*/
/*
*函数名称:hcf
*描述:实现最大公约
×作者:V万能的小黑V
×完成日期:2018年11月22日
×输入:输入两个整型
×当前版本:1.0
*/
int hcf(int x,int y)
{
    int i,k,m,n;
    int sum = 1;
    k = x>y?y:x;
    i = 2;
    while(i <= k){
        m = x % i;
        n = y % i;
        if(m == 0 && n == 0){
            sum *= i;
            x /= i;
            y /= i;
            i = 2;
        }else{i++;}
    }
    return sum;
}
/*
*函数名称:lcm
*描述:实现最小公倍数
×作者:V万能的小黑V
×完成日期:2018年11月22日
×输入:输入两个数字
×当前版本:1.0
*/
int lcm(int x,int y,int l)
{
    return x*y/l;
}

主函数(c043-mymath_test.c)

/*
*Copyright(c)2018 V万能的小黑V
*文件名:c043-mymath_test.c
*描述:最大公约和最小公倍数运算,主函数
*作者:V万能的小黑V
*日期:2018年11月22日
*当前版本:1.0
*/
#include <stdio.h>
#include "c043-mymath.h"
/*
*函数名称:main
*描述:实现输入两个整数,输出最大公约和最小公倍数的输出
×作者:V万能的小黑V
×完成日期:2018年11月22日
×输入:输入两个整型
×当前版本:1.0
*/
int main()
{
    int x,y,hcf1,lcm1;
    printf("请输入两个整数,我们将自动为您计算最大公约数和最小公倍数:");
    scanf("%d %d",&x,&y);
    hcf1 = hcf(x,y);
    lcm1 = lcm(x,y,hcf1);
    printf("最大公约数:%d\n最小公倍数:%d\n",hcf1,lcm1);
    
    return 0;
}
相关文章
|
11月前
|
C语言
【C语言学习者必会的题目集锦1】巩固基础,稳步提高
【C语言学习者必会的题目集锦1】巩固基础,稳步提高
66 0
【C语言学习者必会的题目集锦1】巩固基础,稳步提高
|
12月前
|
C语言
[C语言学习]C语言程序设计基础(三)
[C语言学习]C语言程序设计基础(三)
80 0
[C语言学习]C语言程序设计基础(三)
|
12月前
|
Linux C语言 iOS开发
[C语言学习]C语言程序设计基础(二)
[C语言学习]C语言程序设计基础(二)
98 0
[C语言学习]C语言程序设计基础(二)
|
12月前
|
存储 程序员 C语言
[C语言学习]C语言程序设计基础(一)
[C语言学习]C语言程序设计基础(一)
143 0
[C语言学习]C语言程序设计基础(一)
|
12月前
|
存储 自然语言处理 Linux
0基础C语言自学教程——收官之战——第十四节 文件的编译和链接
这个时候程序将使用一个运行时堆栈(stack),存储函数的局部变量和返回地址。程序同时也可以使用静态(static)内存,存储于静态内存中的变量在程序的整个执行过程一直保留他们的值。
100 0
0基础C语言自学教程——收官之战——第十四节 文件的编译和链接
|
12月前
|
存储 编译器 数据库
0基础C语言自学教程——第十三节 文件操作
数据在内存中以二进制的形式存储,如果不加转换的输出到外存,就是二进制文件。
106 0
0基础C语言自学教程——第十三节 文件操作
|
12月前
|
小程序 程序员 编译器
0基础C语言自学保姆教程——第十二节 动态内存分配
在开辟数组的过程中,其必须是一个定长的数组,就是在开辟空间的过程中就要指定大小;并且空间开辟的大小是固定的。
103 0
0基础C语言自学保姆教程——第十二节 动态内存分配
|
12月前
|
编译器 Linux C语言
0基础C语言自学保姆教程——第十一节 自定义类型(结构体、枚举、位段、联合)与预处理指令(#define、#include等)
不是所有的硬件平台都能访问任意地址上的任意数据的;某些硬件平台只能在某些地址处取某些特定类型的数据,否则抛出硬件异常。
103 0
0基础C语言自学保姆教程——第十一节 自定义类型(结构体、枚举、位段、联合)与预处理指令(#define、#include等)
相关产品
云迁移中心
推荐文章
更多