蓝桥杯—分数(C语言解法)
题目描述
思路
- 先求出分母
- 对分数进行通分,用第二十项的分母除每项的分母得到的数×该项分子即为进行通分,将通分后的每项分子相加,即得到最后的分子
- 求出分子与分母的最大公因数,本题为1,直接输出分子/分母即可,如不唯一,分子,分母同除最大公因数然后输出即可
代码
#include<stdio.h>
int nm[20];
int main(){
int i,sum=1,he=0;
nm[1]=1;
for(i=2;i<=20;i++){
sum*=2;
nm[i]=sum;
}
for(i=1;i<=20;i++){
he+=nm[20]/nm[i];
}
/* //求最大公约数,结果为1,所以直接输出最开始的两个数即可
while(he%nm[20]!=0){
int tem=he;
he=nm[20];
nm[20]=tem%nm[20];
}
printf("%d",nm[20]);*/
printf("\n%d/%d",he,nm[20]);
return 0;
}