首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 开发语言 > C语言 >

C语言尾递规程序设计

2013-01-17 
C语言尾递归程序设计c语言,数字计算编写程序计算并输出:1 + 12 + 123 + 1234 + …… 的前n(设0n10)项的和,

C语言尾递归程序设计
c语言,数字计算编写程序计算并输出:1 + 12 + 123 + 1234 + …… 的前n(设0<n<10)项的和,n从键盘输入。
现在要求以尾递归编写程序!
[解决办法]


def loop(num):
    if not isinstance(num,int):
        return -1
    return 10**(num)
        
num=int(raw_input("请输入一个整数:"))
sum=0
while num>0:
    total=0
    j=1
    while j<=num:
        total+=j*loop(num-j)
        j+=1
    num-=1
    sum+=total
print sum
  python循环
[解决办法]
c语言,数字计算编写程序计算并输出:1 + 12 + 123 + 1234 + …… 的前n(设0<n<10)项的和,n从键盘输入。
现在要求以尾递归编写程序! 

int getx(int n)
{
  if (n==1)
    return 1;

  return getx(n-1)*10+n;
}

int sumx(int n)
{
  int x = getx(n);
  if (n==1)
    return x;

  return x + sumx(n-1);
}

热点排行