1305 - C语言程序设计教程(第三版)课后习题6.3
求Sn=a+aa+aaa+…+aa…aaa(有n个a)之值,其中a是一个数字。例如:2+22+222+2222+22222(n=5),n由键盘输入。
Input
n
Output
和
Examples
Input
5
Output
24690
Hint
在这个题中,a恒为2
Solution C
#include "stdio.h" #include "math.h" main() {long n,sum=0,i=1,s=2; scanf("%d",&n); while(i<=n) {sum=sum+s;s=s+2*pow(10,i); i++;} printf("%ld",sum); }
Solution C++
#include<iostream> #include<math.h> using namespace std; int main() { int s[100],b[100],i,a,j=0,d=0; cin>>a; b[0]=0; for(i=0;i<a;i++) { b[j]=2*pow(10,(float)i); j++; } for(i=0;i<a;i++) { if(i==0) { s[i]=b[i]; continue; } s[i]=b[i]+s[i-1]; } for(i=0;i<a;i++) { d+=s[i]; } cout<<d<<endl; }
Hint
在这个题中,a恒为2