今天无意中发现的一个很优美的递归
先上题吧:输入两个最简分数a/b,c/d,求出所有分母<=n的介于两个分数之间的最简分数,保证a/b<c/d;
比如输入a=1,b=2,c=2,d=3,n=10
输入
5/9
4/7
3/5
5/8
比如输入a=1,b=2,c=2,d=3,n=10
输入
5/9
4/7
3/5
5/8
[ 本帖最后由 czz5242199 于 2012-12-18 21:58 编辑 ]
程序代码:#include<stdio.h>
/*
题目:
输入两个最简分数a/b,c/d,求出所有分母<=n的介于两个分数之间的最简分数,保证a/b<c/d;
比如输入a=1,b=2,c=2,d=3,n=10
样例输出:
3.00/5.00
4.00/7.00
5.00/8.00
5.00/9.00
*/
int main()
{
double ab=1.0/2.0;
double cd=2.0/3.0;
double i=0.0,j=0.0;
for(i=1.0;i<10.0;i+=1.0)
{
for(j=1.0;j<10.0;j+=1.0)
{
if((i/j)>ab && (i/j)<cd)
{
printf("%.2lf/%.2lf\n",i,j);
}
}
}
return 0;
}没考虑是否是最简分数
