C语言:求Sn=a+aa+aaa+aaaa+aaaaa+……的前n项之和

题目:

Sn=a+aa+aaa+aaaa+aaaaa+……前n项之和,其中a一个数字

例如:2+22+222+2222+22222+……

                    

 =========================================================================

                       

思路:

总体思路:

(一).

生成变量:

int a = 0; -- 题目中的a

int n = 0; -- a 的前 n 项

             

输入 a n -- scanf()函数

             

(二).

规律:a + a*10+a + a*10+a*100+a + ……

利用规律 算出每一项 再相加

        

创建相关变量

int sum = 0; -- 算出每一项后相加

int k = 0; -- 用于算出每一项

         

使用 for循环 循环n次算n次

利用 k 和 上面的规律 计算出每一项

k = k * 10 + a;

算出每一项后相加

sum += k;

           

(三).

输出结果 -- printf();

                


                 

第一步:

(1).

生成变量:

int a = 0; -- 题目中的a

int n = 0; -- a 的前 n 项

          

(2).

输入 a n -- scanf()函数

                     

实现代码:

#include <stdio.h>
int main()
{
	//生成变量:
	int a = 0; //题目中的a
	int n = 0; //a的前n项

	//输入 a 和 n -- scanf()函数
	scanf("%d %d", &a, &n);

	return 0;
}

实现图片:

                 


                 

第二步:

规律:a + a*10+a + a*10+a*100+a + ……

利用规律 算出每一项 再相加

        

(1).

创建相关变量

int sum = 0; -- 算出每一项后相加

int k = 0; -- 用于算出每一项

         

(2).

使用 for循环 循环n次算n次

利用 k 和 上面的规律 计算出每一项

k = k * 10 + a;

算出每一项后相加

sum += k;

                     

实现代码:

#include <stdio.h>
int main()
{
	//生成变量:
	int a = 0; //题目中的a
	int n = 0; //a的前n项

	//输入 a 和 n -- scanf()函数
	scanf("%d %d", &a, &n);

	//创建相关变量:
	int sum = 0; //算出每一项后相加
	int k = 0; //用于算出每一项

	//使用 for循环 循环n次,算n次:
	int i = 0;
	for (i = 0; i < n; i++) //前n项,算n次
	{
		k = k * 10 + a; //利用规律算出每一项
		sum += k; //每一项相加
	}

	return 0;
}

实现图片:

                 


                 

第三步:

输出结果 -- printf();

                     

实现代码:

#include <stdio.h>
int main()
{
	//生成变量:
	int a = 0; //题目中的a
	int n = 0; //a的前n项

	//输入 a 和 n -- scanf()函数
	scanf("%d %d", &a, &n);

	//创建相关变量:
	int sum = 0; //算出每一项后相加
	int k = 0; //用于算出每一项

	//使用 for循环 循环n次,算n次:
	int i = 0;
	for (i = 0; i < n; i++) //前n项,算n次
	{
		k = k * 10 + a; //利用规律算出每一项
		sum += k; //每一项相加
	}

	//输出结果:
	printf("%d\n", sum);

	return 0;
}

实现图片:

                    

最终代码和实现效果

最终代码:

#include <stdio.h>
int main()
{
	//生成变量:
	int a = 0; //题目中的a
	int n = 0; //a的前n项

	//输入 a 和 n -- scanf()函数
	scanf("%d %d", &a, &n);

	//创建相关变量:
	int sum = 0; //算出每一项后相加
	int k = 0; //用于算出每一项

	//使用 for循环 循环n次,算n次:
	int i = 0;
	for (i = 0; i < n; i++) //前n项,算n次
	{
		k = k * 10 + a; //利用规律算出每一项
		sum += k; //每一项相加
	}

	//输出结果:
	printf("%d\n", sum);

	return 0;
}

实现效果:

猜你喜欢

转载自blog.csdn.net/weixin_63176266/article/details/131406580