帮忙用C语言写个算法
写个递归算法,把整数字符串转化为整数,如"43576"变成43576注意是递归算法麻烦各位了!我没有举报任何人我厌倦了...
写个递归算法,把整数字符串转化为整数,如"43576"变成43576
注意是递归算法
麻烦各位了!
我没有举报任何人
我厌倦了 展开
注意是递归算法
麻烦各位了!
我没有举报任何人
我厌倦了 展开
5个回答
展开全部
#include <iostream>
#include <string>
#include <cmath>
using namespace std;
int power(int a, int b)
{
int c=a;
for (int n=b; n>1; n--) c*=a;
return c;
}
void main(){
string str ("43576");
int i = str.length() - 1;
int x = 0;
int k;
for( k = 0;k <= str.length() ; k++){
x += str.at(k) * power(10,i);
i--;
}
return 0;
}
我没有运行,直接在这里这么写的,也许会有小错误,不过思路一定没错啦。
#include <string>
#include <cmath>
using namespace std;
int power(int a, int b)
{
int c=a;
for (int n=b; n>1; n--) c*=a;
return c;
}
void main(){
string str ("43576");
int i = str.length() - 1;
int x = 0;
int k;
for( k = 0;k <= str.length() ; k++){
x += str.at(k) * power(10,i);
i--;
}
return 0;
}
我没有运行,直接在这里这么写的,也许会有小错误,不过思路一定没错啦。
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
你所说的事实能说明什么呢……只能说明你对编程不感兴趣。一本基础C都不能仔仔细细的看下去,我不认为这样的人对编程有兴趣。
算了,既然这就是你的想法,我再跟你说就没什么意思了。把你说服了对我也没什么好处。
另外,我不是什么高材生,但我以我的学校为荣。那里的教学水平虽然不怎么样,但是培养出来的学生绝对是会自己动手处理问题的,至少不会来网上找人帮自己做题。
补充:
我怎么没弄清事实了?就你这水平的问题难道还是什么高深的项目,别寒碜人了……
再补充:
刚看见“伪君子”这词。我希望你不要恼羞成怒做人身攻击。我的话你爱听不听,良药苦口,你不听我又没损失。
如果这是作业,劝你趁早换专业,如果是兴趣,我肯定你对编程并不感兴趣。
--------------------
Mark TeaError
算了,既然这就是你的想法,我再跟你说就没什么意思了。把你说服了对我也没什么好处。
另外,我不是什么高材生,但我以我的学校为荣。那里的教学水平虽然不怎么样,但是培养出来的学生绝对是会自己动手处理问题的,至少不会来网上找人帮自己做题。
补充:
我怎么没弄清事实了?就你这水平的问题难道还是什么高深的项目,别寒碜人了……
再补充:
刚看见“伪君子”这词。我希望你不要恼羞成怒做人身攻击。我的话你爱听不听,良药苦口,你不听我又没损失。
如果这是作业,劝你趁早换专业,如果是兴趣,我肯定你对编程并不感兴趣。
--------------------
Mark TeaError
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
不懂就问,没什么大不了.开源时代,欢迎参考
#include<stdio.h>
#include<string.h>
#include<math.h>
long trans(char a[])
{
int len;
len=strlen(a);
if(len==0)return 0;
else return ((a[0]-48)*(long)pow(10,len-1)+trans(a+1));
}
/*测试*/
void main()
{
long num;
char str[10];
scanf("%s",str);
num=trans(str);
printf("\nnum=%ld,num+5=%ld",num,num+5);
}
#include<stdio.h>
#include<string.h>
#include<math.h>
long trans(char a[])
{
int len;
len=strlen(a);
if(len==0)return 0;
else return ((a[0]-48)*(long)pow(10,len-1)+trans(a+1));
}
/*测试*/
void main()
{
long num;
char str[10];
scanf("%s",str);
num=trans(str);
printf("\nnum=%ld,num+5=%ld",num,num+5);
}
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
2008-09-30
展开全部
我靠,楼主你太阴险.居然举报删我回复.
换号接着说:谁帮你谁就是害了你.
你看,下面还真有想害你的...
and,楼主你RP&SX绝对有问题,你还鄙视人家学校嘞,就这话要是发在SD论坛上,绝对被喷个半残.华人的程序高手都集中在那里,你应该去那里跟人家说教说教吧...
/*百度知道多是为分宁可认爹的主,这样会害了多少无知青年啊...*/
换号接着说:谁帮你谁就是害了你.
你看,下面还真有想害你的...
and,楼主你RP&SX绝对有问题,你还鄙视人家学校嘞,就这话要是发在SD论坛上,绝对被喷个半残.华人的程序高手都集中在那里,你应该去那里跟人家说教说教吧...
/*百度知道多是为分宁可认爹的主,这样会害了多少无知青年啊...*/
本回答被提问者采纳
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
不是吧,你们玩口水战啊。。。汗~~~
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询