/*
* Copyright (c) 2012, 烟台大学计算机学院
* All rights reserved.
* 作 者: 刘同宾
* 完成日期:2012 年 11 月 24 日
* 版 本 号:v1.0
* 输入描述:
* 问题描述: 用递归方法将整数n转换成字符串。
* 程序输出:
* 问题分析:略
* 算法设计:略
*/
#include<iostream>
using namespace std;
int main()
{
void convert(int); //函数声明。
int m;
cout<<"请输入一个整数:"<<endl;
cin>>m;
if(m<0)
{
cout<<"-"; //如果是负数,将它变成负数再处理。
m=-m;
}
convert(m);
cout<<endl;
return 0;
}
void convert(int m)
{
int i;
char c;
if((i=m/10)!=0) //检查n是否为个位数
convert(i); //如果不是,递归调用convert(转换)函数。
c=m%10+'0';
cout<<" "<<c;
}
//假设输入的是123,主函数调用convert函数,形参m的值为123,m除以10得到商12,故m/10不等于0,在调用convert函数,此时实参为i,而i的值为12,将此值传给形参m,。。。。。
//执行到i=0,结束调用,流程返回。。