【C语言】常见笔试算法题目0109

从今天开始,陆续接触一些常见的笔试算法题目,每次3道左右,加油!

010901:将一个大整数各位逆序后放入一个数组当中,要求递归实现算法。


//20150109 01 递归实现大整数逆序存入数组
#include<stdio.h>
//此函数即为递归所用函数,传入数组和大整数
void convert(int *result,int n){
 if(n>=10)
 convert(result+1,n/10);
 *result=n%10;
}
//这里是Linux-C 标准的main函数写法
int main(int argc,int argv[]){
 int n=14543789,result[20]={},i;  //n为大整数,result为数组,i为迭代变量
 convert(result,n);
 printf("%d:\n",n);
 for(i=0;i<8;i++){
 printf("%d\n",result[i]); }
}

以上代码在CentOS 系统环境下用gcc编译通过,文件命名为convert.c,用到的gcc命令为

gcc convert.c -o convert 

执行以上命令后会生成名为 convert的可执行文件,执行命令为

./convert

即可出结果。 继续阅读

Share