本题要求编写程序,比较两个有理数的大小。
输入格式:
输入在一行中按照“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
主要考量了结构体的基本使用,其次还有一点是Scanf函数的输入格式。提供一种AC的Sources Codes以供参考。
#include <iostream>
using namespace::std;
struct Data
{
int fengmu;
int fengzi;
};
int main(int argc, const char * argv[])
{
string str;
double d1,d2;
Data data1,data2;
scanf("%d/%d %d/%d",&data1.fengzi,&data1.fengmu,&data2.fengzi,&data2.fengmu);
d1=((double)data1.fengzi)/data1.fengmu;
d2=((double)data2.fengzi)/data2.fengmu;
if (d1>d2) {
printf("%d/%d > %d/%d",data1.fengzi,data1.fengmu,data2.fengzi,data2.fengmu);
}
else if (d1<d2)
{
printf("%d/%d < %d/%d",data1.fengzi,data1.fengmu,data2.fengzi,data2.fengmu);
}
else
{
printf("%d/%d = %d/%d",data1.fengzi,data1.fengmu,data2.fengzi,data2.fengmu);
}
return 0;
}