【问题描述】给定两个均不超过9的正整数k和n,要求编写程序求k+kk+kkk++…+kk…k (n个k,不是n个k乘积)之和
【输入形式】输入不超过9的正整数k和n
【输出形式】输出和
【样例输入】2 3
【样例说明】246
#include<stdio.h>
#include<math.h>
int main()
{
int n,k,t=0,s=0,i;
scanf("%d%d",&k,&n);
for(i=0;i<n;i++)
{
t=t+k*pow(10.0,i);
s=s+t;
}
printf("%d",s);
return 0;
}
#include<stdio.h>
int main()
{
int s=0;
int n,k,i,t=0;
scanf("%d %d",&k,&n);
for(i=1;i<=n;i++)
{
t=t+k;//每一个数
s+=t;//和
k=k*10;//变
}
printf("%d",s);
return 0;
}
变式
【问题描述】编写函数求特殊a串数列的和,S=aa...aa-......-aaa-aa-a(此处aa...aaa表示n个a,a和n的值在1-9之间),例如a=6,n=5,则上面的表达式为S=66666-6666-666-66-6
【输入形式】6 5
【输出形式】59262
#include<stdio.h>
#include<math.h>
int main()
{
int n,k,t=0,s=0,i;
scanf("%d%d",&k,&n);
for(i=0;i<=n-1;i++)
{
t=t-k*pow(10.0,i);
if(i==n-1)
s=s-t;
else s=s+t;
}
printf("%d",s);
return 0;
}