C刷题记录-1013

题目描述

求Sn=a+aa+aaa+…+aa…aaa(有n个a)之值,其中a是一个数字,为2。 例如,n=5时=2+22+222+2222+22222,n由键盘输入。

输入

n

输出

Sn的值

样例输入

5

样例输出

24690

 1 #include <stdio.h>
 2 #include <math.h>
 3 
 4 int create_number (int n);
 5 
 6 int main(){
 7 
 8   int n,i,SN = 0;
 9   scanf("%d",&n);
10 
11   for(i=1;i<=n;i++)
12   {
13     SN = SN + create_number(i);
14   }
15   printf("%d",2*SN);
16   return 0;
17 }
18 
19 int create_number (int n)
20 {
21     int number;
22     if (n==1)
23     {
24       number = 1;
25     }
26     else if (n>=2)
27     {
28      number = pow(10,n-1)+create_number(n-1); //迭代求出11,111,1111
29     }
30 
31     return number;
32 }

 

posted @ 2017-11-08 08:59  遇逆境、处之泰然  阅读(163)  评论(0编辑  收藏  举报