求s=a+aa+aaa+aaaa+aa...a的值,其中a是一個數字。例如2+22+222+2222+22222(此時共有5個數相加),幾個數相加由鍵盤控制

首先先求出當輸入一個數n的時候,求出當前的數

int fn(int a,int n)
{
	int tmp = a;

	while(--n)
	{
		a = a * 10 + tmp;
	}
	return a;
}

接着算來累加求和:

int slosum(int a,int n)
{
	int i = 0;
	int sum = 0;
	for(i = 1;i<=n;i++)
	{
		sum = sum +fn(a,i);
		printf("%d",fn(a,i));
		if(i != n)
		{
			printf("+");
		}
	}
	printf(" = %d",sum);
}

最後結果:
在這裏插入圖片描述


總結:先分清楚邏輯關係,在來分步驟求解。

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章