Chinaunix首页 | 论坛 | 博客
  • 博客访问: 596638
  • 博文数量: 109
  • 博客积分: 1463
  • 博客等级: 上尉
  • 技术积分: 859
  • 用 户 组: 普通用户
  • 注册时间: 2011-07-22 13:21
个人简介

希望和广大热爱技术的童鞋一起交流,成长。

文章分类

全部博文(109)

文章存档

2017年(1)

2016年(2)

2015年(18)

2014年(1)

2013年(9)

2012年(15)

2011年(63)

分类: C/C++

2011-09-15 10:42:47

    题目:采用递归方法将整数转换为字符串,如5432-“5432”,其中整数位数不限,但不会超过int型的范围,要求输出转换后的字符串,不能采用atoi等库函数。
    代码:
  1. #include <iostream>
  2. #include <stdlib.h>
  3. using namespace std;

  4. void change(int num)
  5. {
  6.     char str[100] = {0};
  7.     int k=0;
  8.     int m = 0;
  9.     int i = 0;
  10.     
  11.     if(num < 10)
  12.     {
  13.         str[k++]= num + '0';
  14.     }
  15.     else
  16.     {
  17.         m = num%10;
  18.         str[k++]= m + '0';
  19.         num = num/10;
  20.         change(num);
  21.     }
  22.     
  23.     for(i=strlen(str)-1 ; i>=0 ; i--)
  24.     {
  25.         cout<< str[i] ;
  26.     }
  27. }

  28. int main()
  29. {
  30.     int num;
  31.     int i;
  32.     cout<<"please enter a num."<<endl;
  33.     cin>>num;
  34.     
  35.     change(num);
  36.     cout<<endl;
  37.     return 0;
  38. }
呵呵,以上是我写的,仅供参考,肯定有其他更好的方法。
阅读(662) | 评论(0) | 转发(0) |
给主人留下些什么吧!~~