怎么写一个生成字典的递归?

superdai 2003-04-01 03:24:36
就象输入要生成字母的个数,然后就可以生成这样的文档。
比如 个数为 3

000
001
002
003
.
.
.
.
.
009
010
.
.
019
.
.
.
020
.
.
.
100
.
.
200
.
.
999
...全文
89 6 打赏 收藏 转发到动态 举报
AI 作业
写回复
用AI写文章
6 条回复
切换为时间正序
请发表友善的回复…
发表回复
zhouzhaohan 2003-04-01
  • 打赏
  • 举报
回复
优化一下:
int num;
char buffer[100];
#include <stdio.h>
void print_num(int i)
{
int j;
if(i==0){
printf("%s\n",buffer);
return;
}
for(j='0';j<='9';j++){
buffer[num-i]=j;
print_num(i-1);
}
}



void main()
{
scanf("%d",&num);
buffer[num]='\0';
print_num(num);
}
zhouzhaohan 2003-04-01
  • 打赏
  • 举报
回复
include <stdio.h>

int num;
char buffer[100];
#include <stdio.h>
void print_num(int i)
{
int j;
if(i==0){
printf("%s\n",buffer);
return;
}
for(j='0';j<='9';j++){
buffer[num-i]=j;
buffer[num-i+1]='\0';
print_num(i-1);
}
}



void main()
{
scanf("%d",&num);

print_num(num);
}
wyqiang 2003-04-01
  • 打赏
  • 举报
回复
我是没看懂他要说啥
rtdb 2003-04-01
  • 打赏
  • 举报
回复
前几天就见过这个问题了。还没人作么?
若是可以用C++,我就帮你做一个。
coffeebike 2003-04-01
  • 打赏
  • 举报
回复
我思故我在?
jamesfangjing 2003-04-01
  • 打赏
  • 举报
回复
把输入次数作为递归的参数,输入多少就递归多少次!
然后递归内部是一个循环,遍历一位数!
从右向左递归!
我思故我在!

70,022

社区成员

发帖
与我相关
我的任务
社区描述
C语言相关问题讨论
社区管理员
  • C语言
  • 花神庙码农
  • 架构师李肯
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧