| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 1530 人关注过本帖
标题:任意分数的计算
只看楼主 加入收藏
自学的数学
Rank: 13Rank: 13Rank: 13Rank: 13
等 级:贵宾
威 望:46
帖 子:967
专家分:4146
注 册:2017-11-15
结帖率:93.33%
收藏
已结贴  问题点数:10 回复次数:3 
任意分数的计算
如何对任意分数加以计算,比如:(2/3)+(14/23)或者(5/6)/(9/13),结果还是用分数的形式表示出来。如能化简,更好。
搜索更多相关主题的帖子: 任意 分数 计算 形式 表示 
2019-07-22 17:24
rjsp
Rank: 20Rank: 20Rank: 20Rank: 20Rank: 20
等 级:版主
威 望:528
帖 子:9025
专家分:54030
注 册:2011-1-18
收藏
得分:0 
你哪里不会?
2019-07-22 19:38
自学的数学
Rank: 13Rank: 13Rank: 13Rank: 13
等 级:贵宾
威 望:46
帖 子:967
专家分:4146
注 册:2017-11-15
收藏
得分:0 
编写如下代码:为啥在输入运算符号这里就直接跳过了呢?
程序代码:
#include<stdio.h>
#include<stdlib.h>
main()
{
int a,b,c,d,i,x,y;
char op;
printf("输入第一个分数的分母\n");
scanf("%d",&a);    
printf("输入第一个分数的分子\n");
scanf("%d",&b);    
printf("输入运算符号\n");
scanf("%c",&op);    
printf("输入第二个分数的分母\n");
scanf("%d",&c);    
printf("输入第二个分数的分子\n");
scanf("%d",&d);    

if(a==0||c==0) exit(0);
if(op=='+'){y=b*c+d*a;x=a*c;}
if(op=='-'){y=b*c-d*a,x=a*c;}
if(op=='*'){y=b*d;x=a*c;}
if(op=='/'){y=b*c;x=a*d;}
if(y==0&&x!=0) { printf("%d/%d%c%d/%d=0\n",b,a,op,d,c); }
if(x>y) i=y;
while(i>1)
{
if(x%i==0&&y%i==0){x=x/i;y=y/i;continue;}
i--;
}
if(x/i==1) printf("%d/%d%c%d/%d=%d\n",b,a,op,d,c,y);
else printf("%d/%d%c%d/%d=%d/%d.\n",b,a,op,d,c,y,x);

}
2019-07-23 16:43
rjsp
Rank: 20Rank: 20Rank: 20Rank: 20Rank: 20
等 级:版主
威 望:528
帖 子:9025
专家分:54030
注 册:2011-1-18
收藏
得分:10 
scanf("%c",&op);
改为
scanf(" %c",&op);
2019-07-23 20:10
快速回复:任意分数的计算
数据加载中...
 
   



关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.017044 second(s), 8 queries.
Copyright©2004-2024, BCCN.NET, All Rights Reserved