习题2.3 数列求和-加强版 (20 分)

给定某数字A(1≤A≤9)以及非负整数N(0≤N≤100000),求数列之和S=A+AA+AAA+⋯+AA⋯A(N个A)。例如A=1, N=3时,S=1+11+111=123。

输入格式:
输入数字A与非负整数N。

输出格式:
输出其N项数列之和S的值。

输入样例:
1 3
输出样例:
123

#include<stdio.h>
int main ()
{
	int a[100010]={0};
	int n,m,temp=0,i,p=0,index=0;
	scanf("%d %d",&n,&m);
	for(i=m;i>0;i--){
		a[p++]=i*n;
	}
	for(i=0;i<p;i++){
	     temp=a[i];
		a[i]=a[i]%10;
		a[i+1]+=temp/10;
	}
	for(i=p;i>=0;i--){
		if(a[i]==0&&i==p)//处理前导零 
		continue;
		else{
		printf("%d",a[i]);
		index=1;	
		}
		
	}
	if(a[p]==0&&index==0)//答案为0的特殊情况 
	printf("0");
	return 0;
}

你可能感兴趣的:(C语言)