输入一个整数(2到20),一个小数(0.5到1),输出所有不大于该小数的分数,且分母不大于该整数。
#include<stdio.h>#include<stdlib.h>
int main()
{
int a,i,j,h,k;
double n;
double f[10000];
scanf("%d %lf",&a,&n);
for(i=1;i<=a;i++)
{
for(j=1;((float)j/i)<=n;j++)
{
for(k=1;;k++)
{
f[k]=(float)j/i;//将每一个符合的数值储存起来
for(h=1;h<k;h++)
if(f[h]=f[k])
break;
if(h=k)
printf("%d/%d\n",j,i);
}
}
}
system("pause");
return 0;
}
例如:input:
6 0.7
output:
1/2
1/3
2/3
1/4
1/5
2/5
3/5
1/6