XiaoHui.Net 笑汇程序员论坛
→ C/C++ 讨论区
小弟是初学者`有一道C++篇程题想请各位高手帮忙解决``
|
小弟是初学者`有一道C++篇程题想请各位高手帮忙解决``
小弟是初学者```有一道C++篇程题想请各位高手帮忙解决`````小弟感激不尽````````
用递归方法将一个n位整数转换成字符串```` |
| xp20031119 | 2006-12-6 09:14 |
|
#include <stdio.h>
void get_String (int,char,int);
int main(int argc, char *argv[])
{
int arr,k=0;
char array[]
scanf("%d",&arr);
get_String(arr,array,k);
printf("%s",array);
}
void get_String(int a,char *array,int k)
{
if(a>0)
{
array[k++]=a%10;
a=a/10;
get_String(a,array,k);
}
} |
| xp20031119 | 2006-12-8 04:38 |
|
| 运行过程就是这样,小问题自己再检查一下就行了。 |
|
用C编译器
[CODE]
#include <stdio.h>
#include <stdlib.h>
#define DM 8
void f( int num, char* str )
{
int n = num;
int k = 1;
if( n < 10 )
{
*str = n + '0';
*(str+1) = 0;
return;
}
else
{
while( n >= 10 )
{
n /= 10;
k *= 10;
}
*str = n + '0';
}
return f( num % k, str+1 );
}
void main()
{
char* str = (char*)malloc( DM * sizeof( char ) );
f( 12345678, str );
printf("%s", str );
}
[/CODE]
[[i] 本帖最后由 麦斯 于 2006-12-13 20:31 编辑 [/i]] |
|
/*
n : 待转换整数值
p : 转换结果,调用时可传入一个字符数组
*/
void IntToChar(long n, char* p)
{
static int bits = 0;
if( n >= 10)
{
IntToChar(n/10,p);
bits ++;
}
*(p+bits) = (n % 10) + '0';
} |
|
:\学习\C++\wt2.cpp(23) : error C2562: 'f' : 'void' function returning a value
F:\学习\C++\wt2.cpp(4) : see declaration of 'f' |
|