[解题报告]【第23题】给定 a 和 b,代表分数 a / b,求它的最简分数

这篇博客分享了如何利用最大公约数求解最简分数的编程问题,通过C语言实现辗转相除法。同时,博主探讨了数组中最大公约数的寻找方法,并给出了LeetCode相关题目的解题思路。文章适合编程初学者和备考者阅读,以放松心情应对考试压力。
摘要由CSDN通过智能技术生成

目录

零、写在前面

一、主要知识点

1.最简分数

二、课后习题

1979. 找出数组的最大公约数

写在最后


零、写在前面

        这个系列不经常更新,尝试去完善这部分的所有题解吧。

【第23题】给定 a 和 b,代表分数 a / b,求它的最简分数https://blog.csdn.net/WhereIsHeroFrom/article/details/118272863icon-default.png?t=LA92https://blog.csdn.net/WhereIsHeroFrom/article/details/118272863


一、主要知识点

1.最简分数

有了昨天的最大公约数,求最简分数其实就是求分子分母的最大公约数,然后除掉就好了。

#include <stdio.h>
int gcd(int a, int b) {//辗转除 求最大公约数
    return !b ? a : gcd(b, a % b);   
}
int main() {
    int a, b;
    while(scanf("%d %d", &a, &b) != EOF) {
        int g = gcd(a, b);    
        printf("%d/%d\n", a/g, b/g);    //求最简分数
    } 
    return 0;
}

二、课后习题

1979. 找出数组的最大公约数

1979. 找出数组的最大公约数https://leetcode-cn.com/problems/find-greatest-common-divisor-of-array/

题目描述

给你一个整数数组 nums ,返回数组中最大数和最小数的 最大公约数 。

两个数的 最大公约数 是能够被两个数整除的最大正整数。

思路

先找到最大最小值,然后求最大公约数就好了。不是,,,这是昨天的题啊-.-

int GCD(int a,int b){//辗转相除
    return b ? GCD(b,a%b) : a;
}
int findGCD(int* nums, int numsSize){
    int max = nums[0], min = nums[0] ;//最大最小
    for(int i = 1; i < numsSize; i++){
        if(max < nums[i])   max = nums[i];
        if(min > nums[i])   min = nums[i];
    }
    return GCD(max,min);
}

写在最后

考完一门,还有四门,,,啊!!!!写写题解放松一下。

  • 0
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

XingleiGao

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值