方法一
#define _CRT_SECURE_NO_WARNINGS
#include<stdio.h>
#include<stdlib.h>
#include <math.h>
int sum(int a, int k) {
static int x=0;
x += a * ((int)pow((double)10, (double)(k-1)));
return x;
}
int main()
{
int a,n;
int Sn = 0;
printf("请输入一个整数:>");
scanf("%d", &a);
printf("请输入前多少项的和:>");
scanf("%d", &n);
for (int i = 1; i <= n; i++) {
Sn += sum(a, i);
}
printf("Sn=%d\n", Sn);
system("pause");
return 0;
}
方法二
#define _CRT_SECURE_NO_WARNINGS
#include<stdio.h>
#include<stdlib.h>
#include <math.h>
int main()
{
int a,n;
int Sn = 0,k=0;
printf("请输入一个整数:>");
scanf("%d", &a);
printf("请输入前多少项的和:>");
scanf("%d", &n);
for (int i = 1; i <=n; i++) {
k += a * (int)pow((double)10, (double)(i-1));
Sn += k;
}
printf("Sn=%d\n", Sn);
system("pause");
return 0;
}