Create your Gitee Account
Explore and code with more than 6 million developers,Free private repositories !:)
Sign up
Clone or download
期末考试:最简分式.md 1.37 KB
Copy Edit Web IDE Raw Blame History

期末考试:最简分式(10分)

题目内容:

分数可以表示为“分子/分母”的形式。编写一个程序,要求用户输入一个分数,然后将其约分为最简分式。最简分式是指分子和分母不具有可以约分的成分了。如6/12可以被约分为1/2。当分子大于分母时,不需要表达为整数又分数的形式,即11/8还是11/8;而当分子分母相等时,仍然表达为1/1的分数形式。

输入格式:

输入在一行中给出一个分数,分子和分母中间以斜杠“/”分隔,如: 12/34 表示34分之12。分子和分母都是正整数(不包含0)。

提示:在scnaf的格式字符串中加入“/”。

输出格式:

在一行中输出这个分数对应的最简分式,格式与输入的相同,即采用“分子/分母”的形式表示分数。如 5/6 表示 6分之5

输入样例:

60/120

输出样例:

1/2

时间限制:500ms内存限制:32000kb

题解

#include <stdio.h>

// 求最大公约数
int maxCD(int x, int y)
{
    int t;
    if (x<y)
    {
        t=x; x=y; y=t;
    }
    while (x % y)
    {
        t = x % y;
        x = y;
        y = t;
    }
    return y;
}

int main(void)
{
    int x, y, cd;
    scanf("%d/%d", &x, &y);
    cd = maxCD(x, y);
    printf("%d/%d\n", x/cd, y/cd);
    return 0;
}

Comment ( 0 )

Sign in for post a comment