| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 420 人关注过本帖
标题:c语言递归问题,解释下代码就行了
只看楼主 加入收藏
与c暧昧
Rank: 1
等 级:新手上路
帖 子:9
专家分:4
注 册:2012-9-3
结帖率:100%
收藏
已结贴  问题点数:16 回复次数:6 
c语言递归问题,解释下代码就行了
【4.91】设有字母a、b、c,请编程用递归的方法产生由这些字母组成的,且长度为n的所有可能的字符串。例如,输入n=2,则输出:
aa ab ac ba bb bc ca cb cc
#include <stdio.h>
int a[10];
fun( int *p, int m, int n ) /
{ int i; for( i=0;i<m;i++ )
{ *p = i;
if( n > 1 ) fun( p+1, m, n-1);
else print(p);
}
}
print( int *p )
{ int *q;
for( q=a;q<=p;q++ )
printf("%c", 'a'+ *q);
printf("\t");
}
main( )
{ int m, n;
printf("\nEnter m n:");
scanf("%d%d", &m, &n);
fun( a, m, n);
}
解释下那个for循环,比如m=3,n=3,怎么输出aaa  aab  aac  aba abb abc ..................................等等
搜索更多相关主题的帖子: 字符串 include 
2012-10-06 17:46
鱼欲语雨
Rank: 1
等 级:新手上路
帖 子:38
专家分:9
注 册:2012-9-27
收藏
得分:2 
看的晕乎乎的
2012-10-06 17:52
青春无限
Rank: 19Rank: 19Rank: 19Rank: 19Rank: 19Rank: 19
来 自:江苏
等 级:贵宾
威 望:24
帖 子:3452
专家分:19340
注 册:2012-3-31
收藏
得分:2 
看看

学 会看代码…学习写程序…学会搞开发…我的目标!呵呵是不是说大话啊!!一切皆可能
2012-10-06 18:36
姻脂梦
Rank: 6Rank: 6
等 级:侠之大者
帖 子:264
专家分:424
注 册:2012-7-3
收藏
得分:2 
学习了
2012-10-07 12:21
雪狼MJ
Rank: 8Rank: 8
来 自:甘肃
等 级:蝙蝠侠
威 望:4
帖 子:267
专家分:853
注 册:2012-5-27
收藏
得分:10 
#include <stdio.h>
int a[10];

void print( int *p )
{
    int *q;

    for( q=a;q<=p;q++ ){
        printf("%c", 'a'+ *q);
    }
   
    printf("\t");
}

void fun( int *p, int m, int n )
{
    int i;
     for( i=0;i<m;i++ ){
          *p = i;//给数组a[]赋值,a[0]=0,a[1]=1,a[2]=2。。。。
        if( n > 1 ){
             fun( p+1, m, n-1);//这个递归语句就是控制让n<1,同时,让指向数组a[]的指针加到n的值
        }
        else print(p);//当n<1时执行此语句
    }
}

int main(void)
{
    int m, n;
    printf("\nEnter m n:");
    scanf("%d %d", &m, &n);
    fun( a, m, n);//a是数组a[]的首地址
}


Edsger Dijkstra:算法+数据结构=程序
2012-10-07 13:42
xtjopt
Rank: 3Rank: 3
等 级:论坛游侠
帖 子:89
专家分:168
注 册:2012-9-12
收藏
得分:0 
新手 来学习
2012-10-07 14:17
快速回复:c语言递归问题,解释下代码就行了
数据加载中...
 
   



关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.024619 second(s), 8 queries.
Copyright©2004-2024, BCCN.NET, All Rights Reserved