结构-01. 有理数比较(10)
时间限制
400 ms
内存限制
65536 kB
代码长度限制
8000 B
判题程序
Standard
作者
乔林(清华大学)
本题要求编写程序,比较两个有理数的大小。
输入格式:
输入在一行中按照“a1/b1 a2/b2”的格式给出两个分数形式的有理数,其中分子和分母全是整形范围内的正整数。
输出格式:
在一行中按照“a1/b1 关系符 a2/b2”的格式输出两个有理数的关系。其中“>”表示“大于”,“<”表示“小于”,“=”表示“等于”。
输入样例1:1/2 3/4输出样例1:
1/2 < 3/4输入样例2:
6/8 3/4输出样例2:
6/8 = 3/4
先比较分母,再比较分子
也可以直接比较分子
#include<stdio.h> struct shu { int fenzi; char fenhao; int fenmu; }shu1,shu2; int main() { int m,n; scanf("%d%c%d",&shu1.fenzi,&shu1.fenhao,&shu1.fenmu); scanf("%d%c%d",&shu2.fenzi,&shu2.fenhao,&shu2.fenmu); if(shu1.fenmu==shu2.fenmu) { if(shu1.fenzi==shu2.fenzi) { printf("%d%c%d",shu1.fenzi,shu1.fenhao,shu1.fenmu); printf(" = "); printf("%d%c%d\n",shu2.fenzi,shu2.fenhao,shu2.fenmu); } else if(shu1.fenzi>shu2.fenzi) { printf("%d%c%d",shu1.fenzi,shu1.fenhao,shu1.fenmu); printf(" > "); printf("%d%c%d\n",shu2.fenzi,shu2.fenhao,shu2.fenmu); } else { printf("%d%c%d",shu1.fenzi,shu1.fenhao,shu1.fenmu); printf(" < "); printf("%d%c%d\n",shu2.fenzi,shu2.fenhao,shu2.fenmu); } } else { m=shu1.fenzi*shu2.fenmu; n=shu2.fenzi*shu1.fenmu; if(m==n) { printf("%d%c%d",shu1.fenzi,shu1.fenhao,shu1.fenmu); printf(" = "); printf("%d%c%d\n",shu2.fenzi,shu2.fenhao,shu2.fenmu); } else if(m>n) { printf("%d%c%d",shu1.fenzi,shu1.fenhao,shu1.fenmu); printf(" > "); printf("%d%c%d\n",shu2.fenzi,shu2.fenhao,shu2.fenmu); } else { printf("%d%c%d",shu1.fenzi,shu1.fenhao,shu1.fenmu); printf(" < "); printf("%d%c%d\n",shu2.fenzi,shu2.fenhao,shu2.fenmu); } } return 0; }