题目描述
输入一个自然数N
请写一个程序来增序输出分母小于等于N的既约真分数
输入
单独的一行 一个自然数N(1..160)
输出
每个分数单独占一行
样例输入
5
样例输出
0/1
1/5
1/4
1/3
2/5
1/2
3/5
2/3
3/4
4/5
1/1
参考代码
#include <stdio.h>
#include <stdlib.h>
#include <string.h>
int n;
void dfs(int n1, int d1, int n2, int d2)
{
if(d1+d2 > n)
return;
dfs(n1,d1, n1+n2,d1+d2);
printf("%d/%dn", n1+n2, d1+d2);
dfs(n1+n2,d1+d2, n2,d2);
}
int main()
{
scanf("%d", &n);
printf("0/1n");
dfs(0,1, 1,1);
printf("1/1n");
return 0;
}
解析
暂无