栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 软件开发 > 后端开发 > C/C++/C#

C语言编程题:分数的加减乘除

C/C++/C# 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

C语言编程题:分数的加减乘除

  • 先求公因子
  • 再编程化成最简式
  • 再进行加减乘除的函数编写
#include 
#include 

typedef struct{
    int fenzi;
    int fenmu;
}fenshu;

fenshu fenshu1={15,25},fenshu2={14,21};

int gcd(int a,int b)
{
    int buf;
    do{
         buf=a%b;
         a=b;
         b=buf;
    }while(buf!=0);
    return a;
}

fenshu to_simple(fenshu a)
{
    fenshu x;
    x.fenzi=a.fenzi/gcd(a.fenzi,a.fenmu);
    x.fenmu=a.fenmu/gcd(a.fenzi,a.fenmu);
    return x;
}

fenshu add_fenshu(fenshu a,fenshu b)
{
    fenshu x;
    x.fenzi=a.fenzi*b.fenmu+b.fenzi*a.fenmu;
    x.fenmu=a.fenmu*b.fenmu;
    return to_simple(x);
}

fenshu sub_fenshu(fenshu a,fenshu b)
{
    fenshu x;
    x.fenzi=a.fenzi*b.fenmu-b.fenzi*a.fenmu;
    x.fenmu=a.fenmu*b.fenmu;
    return to_simple(x);
}
fenshu mul_fenshu(fenshu a,fenshu b)
{
    fenshu x;
    x.fenzi=a.fenzi*b.fenzi;
    x.fenmu=a.fenmu*b.fenmu;
    return to_simple(x);
}
fenshu div_fenshu(fenshu a,fenshu b)
{
    fenshu x;
    x.fenzi=a.fenzi*b.fenmu;
    x.fenmu=a.fenmu*b.fenzi;
    return to_simple(x);
}




int main()
{
    fenshu test_fenshu;
    printf("fenshu1=%d/%dn",fenshu1.fenzi,fenshu1.fenmu);
    printf("fenshu2=%d/%dnn",fenshu2.fenzi,fenshu2.fenmu);
    printf("gcd=%dn",gcd(46,16));
    printf("fenshu1 to simple=%d/%dn",to_simple(fenshu1).fenzi,to_simple(fenshu1).fenmu);
    printf("fenshu2 to simple=%d/%dnn",to_simple(fenshu2).fenzi,to_simple(fenshu2).fenmu);
   
    test_fenshu=add_fenshu(fenshu1,fenshu2);
    printf("fenshu1*fenshu2=%d/%dn",test_fenshu.fenzi,test_fenshu.fenmu);
    test_fenshu=sub_fenshu(fenshu1,fenshu2);
    printf("fenshu1*fenshu2=%d/%dn",test_fenshu.fenzi,test_fenshu.fenmu);
    test_fenshu=mul_fenshu(fenshu1,fenshu2);
    printf("fenshu1*fenshu2=%d/%dn",test_fenshu.fenzi,test_fenshu.fenmu);
    test_fenshu=div_fenshu(fenshu1,fenshu2);
    printf("fenshu1*fenshu2=%d/%dnn",test_fenshu.fenzi,test_fenshu.fenmu);
    return 0;
}

输出效果如下:

转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/875630.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号