c语言编程题四则运算,C语言编程题(分数的四则运算)

C语言编程题(分数的四则运算)

來源:互聯網  2010-03-14 09:33:07  評論

分類: 電腦/網絡 >> 程序設計 >> 其他編程語言

問題描述:

输入:

分数1 操作符 分数2

输出:

计算结果。

例;测试输入 1/3+1/2

3/10*2/3

3/10/3/5

1/3-1/2

1/5*10/1

期待的输出1/3 + 1/2 = 5/6

3/10 * 2/3 = 1/5

3/10 / 3/5 = 1/2

1/3 - 1/2 = -1/6

1/5 * 10/1 = 2

參考答案:

//呵呵!写的有些麻烦,但输入的格式你要求的是那样,

//只好这样了,应该还符合你的要求!你可以测试一下,

//但输入时不必输入括号。如果有兴趣的话,

//可以加我qq,大家共同交流!qq:***********

#include

main()

{char mo1,op,mo2;

int a,b,c,d,e,f;

scanf("%d%c%d%c%d%c%d",&a,&mo1,&b,&op,&c,&mo2,&d);

if(b==0||d==0)

{printf("分母不能为零!\n");

exit(0);

}

switch(op)

{

case'+':

{

f=b*d;

e=(a*d+c*b);

break;

}

case'-':

{

f=b*d;

e=(a*d-c*b);

break;

}

case'*':

{

e=a*c;

f=b*d;

break;

}

case'/':

{

e=a*d;

f=b*c;

break;

}

}

while(e%2==0&&f%2==0)

{

e=e/2;

f=f/2;

}

while(e%3==0&&f%3==0)

{

e=e/3;

f=f/3;

}

if(e==f||e==0)

printf("%d%c%d%c%d%c%d=%d\n",a,mo1,b,op,c,mo2,d,e);

else printf("%d%c%d%c%d%c%d=%d/%d\n",a,mo1,b,op,c,mo2,d,e,f);

}

[b]分类:[/b] 电脑/网络 >> 程序设计 >> 其他编程语言[br][b]问题描述:[/b][br]输入:

分数1 操作符 分数2

输出:

计算结果。

例;测试输入 1/3+1/2

3/10*2/3

3/10/3/5

1/3-1/2

1/5*10/1

期待的输出1/3 + 1/2 = 5/6

3/10 * 2/3 = 1/5

3/10 / 3/5 = 1/2

1/3 - 1/2 = -1/6

1/5 * 10/1 = 2[br][b]参考答案:[/b][br]//呵呵!写的有些麻烦,但输入的格式你要求的是那样,

//只好这样了,应该还符合你的要求!你可以测试一下,

//但输入时不必输入括号。如果有兴趣的话,

//可以加我qq,大家共同交流!qq:***********

#include

main()

{char mo1,op,mo2;

int a,b,c,d,e,f;

scanf("%d%c%d%c%d%c%d",&a,&mo1,&b,&op,&c,&mo2,&d);

if(b==0||d==0)

{printf("分母不能为零!\n");

exit(0);

}

switch(op)

{

case'+':

{

f=b*d;

e=(a*d+c*b);

break;

}

case'-':

{

f=b*d;

e=(a*d-c*b);

break;

}

case'*':

{

e=a*c;

f=b*d;

break;

}

case'/':

{

e=a*d;

f=b*c;

break;

}

}

while(e%2==0&&f%2==0)

{

e=e/2;

f=f/2;

}

while(e%3==0&&f%3==0)

{

e=e/3;

f=f/3;

}

if(e==f||e==0)

printf("%d%c%d%c%d%c%d=%d\n",a,mo1,b,op,c,mo2,d,e);

else printf("%d%c%d%c%d%c%d=%d/%d\n",a,mo1,b,op,c,mo2,d,e,f);

}

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值