当前位置: 代码迷 >> C语言 >> [求助]怎么做?
  详细解决方案

[求助]怎么做?

热度:839   发布时间:2007-03-26 17:40:34.0
[求助]怎么做?
求 S=a+aa+aaa+...aaaaaa,其中A是一个数字,N表示A的位数,例如:
2+22+222+2222此时N=4,N由键盘输入,怎么做啊用循环??
搜索更多相关的解决方案: 数字  键盘  aaa  位数  

----------------解决方案--------------------------------------------------------
这题和“各个位数上的和”差不多

你把一个数字配上以后再让 N-- 就可以了,知道N=0
----------------解决方案--------------------------------------------------------
int i=1,sum=1,n=1;
for (i=1;i<=5;i++)
{
n=n*i;
sum = sum+n;
printf("%d\n",sum);
}
----------------解决方案--------------------------------------------------------
sorry,我把题看成n!类型了
sorry
----------------解决方案--------------------------------------------------------
#define NUM 4
int main()
{
int n=0;
int i=0,j=0;
long total=0,partTotal=1;
scanf("%d",&n);
for(i=1;i<=n;i++)
{
partTotal=1;
for(j=1;j<=i;j++)
partTotal*=NUM;
total+=partTotal;
}
}

由于时间问题,没有运行.
----------------解决方案--------------------------------------------------------
main()
{ int i,k,sum=0,n,m=0,a;
scanf("%d%d",&a,&n);
for(i=0;i<n;i++)
{if(i==0)
k=a;
else
{m=a*10;}
k=k+m;
sum=sum+k;
}
printf("%d",sum);

}
这个没问题 运行拉一哈的
----------------解决方案--------------------------------------------------------

a+aa+aaa+aaaa+aaaaa=a(1+11+111+1111+11111)

算(1+11+111+1111+11111)
sum=0,t=0;
for(int i=1;i<=N;i++)
{
t=t*10+1;
sum+=t;
}


----------------解决方案--------------------------------------------------------
  相关解决方案