小凡


私信TA

用户名:dotcpp0775112

访问量:61

签 名:

保持强烈的好奇心和兴趣

等  级
排  名 30511
经  验 469
参赛次数 0
文章发表 3
年  龄 20
在职情况 学生
学  校 湛江科技学院
专  业 计算机科学与技术

  自我简介:

攀登的过程也许漫长,但巅峰的风景是值得的!

解题思路: 一、可以将这个看成一个数列,an代表这个是第几项,Sn代表前几项的和。

               二、通过观察可以看到每一项都是上一项的10倍加2(除了第一项),即an=10an+2;例如:22=2*10+2;222=22*10+2;

               三、利用for循环求出每一个an;

               四、通过Sn做每一次累加即可,即Sn+=an。



注意事项: an要初始化为0,只有这样才可以得到第一项为2,;
参考代码:

#include<stdio.h>

int main()

{

  int n,i,an=0,Sn=0;

  while(~scanf("%d",&n))

  {

        for(i=0;i<n;i++)

      {

          an=10*an+2;

          Sn+=an;

      }

  }

   printf("%d",Sn);

}


 

0.0分

1 人评分

  评论区