| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 658 人关注过本帖
标题:帮忙解释一下这个程序完成什么功能,还是这个程序本来就有错误?
只看楼主 加入收藏
源本英明C
Rank: 3Rank: 3
来 自:日本
等 级:论坛游侠
帖 子:113
专家分:154
注 册:2010-5-14
结帖率:85.71%
收藏
 问题点数:0 回复次数:4 
帮忙解释一下这个程序完成什么功能,还是这个程序本来就有错误?
#include<stdio.h>
main()
{ long number;
  void convert(long n);
  printf("input the number:\n");
  scanf("%ld",&number);
  printf("the number is:\n");
  if(number<0)number=-number;
  printf("%ld\n",number);

  convert(number);
 getch();
}
 void convert(long n)
 {long i;
 if((i=n/10)!=0)
 convert(i);
 putchar(n%10+'0');
}
请大家多发表意见指点下我这个菜鸟,谢过!
搜索更多相关主题的帖子: 解释 
2010-05-27 09:25
myhnuhai
Rank: 10Rank: 10Rank: 10
等 级:青峰侠
威 望:3
帖 子:425
专家分:1725
注 册:2010-3-17
收藏
得分:0 
有一点错误,但结果是输出长整型数的最高位!
#include<stdio.h>
main()
{ long number;
  void convert(long n);
  printf("input the number:\n");
  scanf("%ld",&number);
  printf("the number is:\n");
  if(number<0)
  {
  number=-number;
  printf("%ld\n",number);
    }
  convert(number);
getch();
}
void convert(long n)
{
    long i;
if((i=n/10)!=0)
convert(i);
else
putchar(n%10+'0');

}

不要让肮脏的记忆,迷失了原本纯洁的心灵!
2010-05-27 13:35
源本英明C
Rank: 3Rank: 3
来 自:日本
等 级:论坛游侠
帖 子:113
专家分:154
注 册:2010-5-14
收藏
得分:0 
回复 2楼 myhnuhai
阁下,请您能解释的具体些吗?
void convert(long n)
{long i;
if((i=n/10)!=0)
convert(i);
putchar(n%10+'0');
}
这段程序是干什么的,我还不好理解,先谢过!

柔术:打败对手的最好方法就是心狠手辣,因为对手不会给你太多机会,如果他够厉害!
2010-05-27 14:41
流行语
Rank: 2
等 级:论坛游民
帖 子:8
专家分:19
注 册:2010-5-27
收藏
得分:0 
首先,我先说一下,你的程序没有问题。其实上面写的程序和你写的程序实现的功能是不一样的,他要实现的是输出长整型中的最高位,而你实现的是输出这个长整型,不过值类型改变。不知道,你是否注意到,他的被调用函数中多了else,从而导致你们俩的程序实现的功能是不一样的解释如下:当你输入的是正数时,开始调用函数,当i=n/10不等于0时,再调用convert(),但不输出,直到i=n/10等于0时,停止调用,同时开始从最高位到最低位输出,可输出值类型以改变为字符型。这个程序的核心是递归函数的调用,我希望你看一下递归函数的调用。不知道你是否能理解我所写的,希望我写的对你有点帮助。
2010-05-27 17:12
源本英明C
Rank: 3Rank: 3
来 自:日本
等 级:论坛游侠
帖 子:113
专家分:154
注 册:2010-5-14
收藏
得分:0 
回复 4楼 流行语
if((i=n/10)!=0)这个语句中,i是干什么用的,还有N事干什么用,真句话又是什么意思,谢谢了!

柔术:打败对手的最好方法就是心狠手辣,因为对手不会给你太多机会,如果他够厉害!
2010-05-28 13:44
快速回复:帮忙解释一下这个程序完成什么功能,还是这个程序本来就有错误?
数据加载中...
 
   



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

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