| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 1034 人关注过本帖
标题:递归函数
只看楼主 加入收藏
烟雾中的迷茫
Rank: 9Rank: 9Rank: 9
等 级:蜘蛛侠
帖 子:621
专家分:1069
注 册:2011-2-9
收藏
得分:0 
回复 9楼 chenwei435
楼主的要电话号码 有意向就加我吧1273203953 我叫 赵朋
2011-06-19 15:47
laoyang103
Rank: 19Rank: 19Rank: 19Rank: 19Rank: 19Rank: 19
来 自:内蒙古包头
等 级:贵宾
威 望:19
帖 子:3082
专家分:11056
注 册:2010-5-22
收藏
得分:0 
楼主把答案贴上来吧

                                         
===========深入<----------------->浅出============
2011-06-19 15:56
lz1091914999
Rank: 14Rank: 14Rank: 14Rank: 14
来 自:四川
等 级:贵宾
威 望:37
帖 子:2011
专家分:5959
注 册:2010-11-1
收藏
得分:0 
简单的问题,何必用递归。

My life is brilliant
2011-06-19 19:35
寒风中的细雨
Rank: 17Rank: 17Rank: 17Rank: 17Rank: 17
等 级:贵宾
威 望:66
帖 子:1710
专家分:8645
注 册:2009-9-15
收藏
得分:0 
程序代码:
#include <stdio.h>

#define SIZE 100

void swap(char *a, char *b)
{
    char c;
    c = *a;
    *a = *b;
    *b = c;
}

void convert(char *s)
{
    char *p=s,c;
   // int i;

    while(*p)  p++;
    //_______________;
    //swap(p, p-1);
    *p=*(p-1), *(p-1)=0;
  
    if(s<p)
    {
        c=*s;
        *s=*p;
        *p=c;
        convert(s+1);
        //____________;
        //swap(p, p-1);
        *(p-1)=*p, *p=0;
    }
}

int main(void)
{
    char string[SIZE]={0};

    gets(string);
    convert(string);
    puts(string);
}
2011-06-19 20:21
laoyang103
Rank: 19Rank: 19Rank: 19Rank: 19Rank: 19Rank: 19
来 自:内蒙古包头
等 级:贵宾
威 望:19
帖 子:3082
专家分:11056
注 册:2010-5-22
收藏
得分:0 
回复 14楼 寒风中的细雨
好像就让写两句吧  而且版主的结果也不对
收到的鲜花
  • 寒风中的细雨2011-06-19 22:14 送鲜花  15朵   附言:谢谢 指出来

                                         
===========深入<----------------->浅出============
2011-06-19 21:06
laoyang103
Rank: 19Rank: 19Rank: 19Rank: 19Rank: 19Rank: 19
来 自:内蒙古包头
等 级:贵宾
威 望:19
帖 子:3082
专家分:11056
注 册:2010-5-22
收藏
得分:0 
图片附件: 游客没有浏览图片的权限,请 登录注册
收到的鲜花
  • 寒风中的细雨2011-06-19 22:10 送鲜花  10朵   附言:程序的递归条件太蹩脚啦

                                         
===========深入<----------------->浅出============
2011-06-19 21:06
寒风中的细雨
Rank: 17Rank: 17Rank: 17Rank: 17Rank: 17
等 级:贵宾
威 望:66
帖 子:1710
专家分:8645
注 册:2009-9-15
收藏
得分:0 
程序代码:
#include <stdio.h>

#define SIZE 100

void swap(char *a, char *b)
{
    char c;
    c = *a;
    *a = *b;
    *b = c;
}

void convert(char *s)
{
    char *p=s,c;
   // int i;

    while(*p)  p++;
    //_______________;
    //swap(p, p-1);
    s!=p ? (*p=*(p-1), *(p-1)=0): 1;
  
    if(s<p)
    {
        c=*s;
        *s=*p;
        *p=c;
        convert(s+1);
        //____________;
        //swap(p, p-1);
        p-s!=1 ? (*(p-1)=*p, *p=0): 1;
    }
}

int main(void)
{
    char string[SIZE]={0};

    gets(string);
    convert(string);
    puts(string);
}
2011-06-19 22:08
寒风中的细雨
Rank: 17Rank: 17Rank: 17Rank: 17Rank: 17
等 级:贵宾
威 望:66
帖 子:1710
专家分:8645
注 册:2009-9-15
收藏
得分:0 
图片附件: 游客没有浏览图片的权限,请 登录注册
2011-06-19 22:13
ansic
Rank: 14Rank: 14Rank: 14Rank: 14
来 自:恍惚窈冥
等 级:城市猎人
帖 子:1543
专家分:5367
注 册:2011-2-15
收藏
得分:0 
楼主在CSDN上也有账号。

善人者,不善人之师;不善人者,善人之资。不贵其师,不爱其资,虽智大迷。
2011-06-19 22:36
烟雾中的迷茫
Rank: 9Rank: 9Rank: 9
等 级:蜘蛛侠
帖 子:621
专家分:1069
注 册:2011-2-9
收藏
得分:0 
哈哈  到处观光找帮助啊    嘿嘿 好了 说正经的有人给出以下答案 感觉 应该相符 我好像有点想歪了
程序代码:
#include<stdio.h>
void convert(char *s)
{
  char *p=s,c;
  int i;

  while(*p) p++;
  if(--p > s){i= *s, *s='\0';};//保存并放上一空字符.

  if(s<p)
  {
  c=*s;
  *s=*p;
  *p=c;
  convert(s+1);
  *p=i;//恢复之.
  }
}
main(){

char buf[80];
while(1==scanf("%79s",buf)) {
        printf("convert:\n");
        convert(buf);
        printf(buf);
        printf("\n");
        }
}
2011-06-20 17:49
快速回复:递归函数
数据加载中...
 
   



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

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