C语言 求Sn=a+aa+……+aaa……a(n个a),其中a和n是从键盘输入。怎么做啊??

供稿:hz-xin.com     日期:2025-01-13
C语言编程:求Sn=a+aa+aaa+···+aa··a(n个a)的值,其中a和N键盘输入

#include
void main()
{
int a,n,count=1;
long int sn=0,tn=0;
printf("please input a and n
");
scanf("%d%d",&a,&n);
printf("a=%d,n=%d
",a,n);
while(count<=n)
{
tn=tn+a;
sn=sn+tn;
a=a*10;
++count;
}
printf("a+aa+...=%ld
",sn);
}

C语言编程:
#include
int main(int argc, char *argv[])
{
int a;
int n;
int num=1;//计算每次n个a的值
int sum=0;//计算总和
int i;
scanf("%d%d",&a,&n);
for(i=0;i<n;i++)
{
if(i==0)//第一次
{
num=a;
sum+=num;
}
else//以后的都满足关系:这个数等于前一个数*10+a
{
num=num*10+a;
sum+=num;
}
}
printf("%d",sum);//输出总和
return 0;
详细操作:
打开Dev-c++软件,点击“新建源代码”。

具体程序如下:
#include
int main()
{
int i,j,a,n,sum=0,term=0;
printf("please input a number:");
scanf("%d",&a);
printf("please input n number:");
scanf("%d",&n);
for(i=1;i<=n;i++)
{
term=term*10+a;
sum=sum+term;
}
printf("a+aa+aaa+...+a...a=%d",sum);
return 0;
}

编写完程序之后,点击运行即可得出结果。最后的结果是根据自己输入的n值和a值为基础来进行运行的,每次输入的值不同,结果也会不同。

其中:for表示循环结构,i 表示循环条件,在编写程序时,注意给赋予增值变量的条件。

其中:term=term*10+a 中的term表示a的位数,跟随每次循环结构的变换,term不断被赋予新值。sum=sum+term 表示累加的值,每次循环之后的sum都会被赋予新值,所以,在编写程序时,要注意 i 的最大循环次数,否则,此程序会无限选循环下去,最终没有结果。

#include<stdio.h>
int main()
{
int a,n,i=1,sn=0,tn=0;
printf("a,n=:");
scanf("%d,%d",&a,&n);
while(i<=n)
{
tn=tn+a;
sn=sn+tn;
a=a*10;
++i;
}
printf("a+aa+aaa+...=%d\n",sn);
return 0;
}
修改了一下,,现在可以了

int sum(int a, int n)

{
int i;
int s = 0;
for (i=n; i>0; i--)
{
s = a + a * s;
}
return s;
}
int main()
{
int a, n;
int sn;
scanf("%d%d", &a, &n);
sn = sum(a, n);

return 0;
}

初一Free pascal语言题目
题1、求Sn=a+aa+aaa+…+aa…a 之值,其中a是一个数字。例如:2+22+222+2222+22222(此时n=5), n由键盘输入。题2、打印100-999之间所有的“水仙花数”。“水仙花数”是一个三位数,其各位数立方和等于该数本身。题3、有15个数按由小到大顺序存放在一个数组中,输入一个数,要求找出该数是数组中第几个...

求sn=a+aa+aaa+aaaa+...的值C语言
你的scanf函数中,不应该是&d,而应该是%d,第二个参数n也应该加上符号&,另外,代码中还有其它的一些错误,我改了一下,祥见配图。

C语言编程编写一程序, 求Sn= a+aa+aaa+…+aaa…aaa(n个a)的值,其中a...
include<iostream>\/\/ n+1 代表的是位数,从0开始,即n=0代表一位int getValue(int a, int n) { int temp = a; while (n > 0) { temp = temp * 10 + a; n--; } return temp;}int main() { using namespace std; int a, n,result = 0; int ...

输入两个整数a和n,计算Sn=a+aa+aaa+aa...a(n个a),用c语言写个程序将这...
逻辑错误:a=a+a*10,a的值变了,不再是原先输入的a。修改方法:格式错误按C语言要求的格式修改。逻辑错误引入新的变量k解决。include <stdio.h>int main(){int a,n,k=0,sum=0,i;\/\/定义变量k,并赋初始值0scanf("%d,%d",&a,&n);\/\/按C语言要求的格式修改for(i=1;i<=n;i++){k...

编程:求Sn=a+aa+aaa+…+aa…a(n个a)的值,其中a是一个数字。n从键盘输入...
MATLAB编程语言:a=??;%??要替换掉成一个数字 for i=input('输入n数据 >>');sn=sn^iend然后弹出信息 输入n数据 >>5 sn = 结果

C语言编写:求Sn=a+aa+aaa+…+aa…a n个a之值
这个计算是错的吧,是a+aa+aaa+...+aaaaaa 所以可以做如下修改:include<stdio.h>#include<math.h>int main(){int n,a,sn,sa;double m;printf("输入 a,n\\n");scanf("%d,%d",&a,&n); for(m=0,sn=0,sa=a;m<=(n-1);) {sn=sn+sa;sa = sa*10+a;\/\/第m+1个式子...

C语言编写:求Sn=a aa aaa … aa…a n个a之值
include <stdio.h>void main(){int i,a,n,m=0,s=0;scanf("%d%d",&a,&n);for(i=0;i<n;i++){m=m*10+a;s+=m;}printf("S=%d",s);}运行示例:即输入a的值为2,n的值为5时 Sn=2+22+222+2222+22222=24690

求a+aa+…+a…a的值。
include "math.h"\/\/计算a...a(N个a的值)long make(int a, int N){ int i;long nResult = 0;for(i = 0; i < N; i++)nResult += (long)(a * pow(10, i));\/\/pow(a,b)函数为计算a的b次方,在math.h中声明 return nResult;} \/\/计算a+aa+aaa+...(aa..a)(N个a)...

【c语言编程题】输入a,n输出s=a+aa+aaa+…n项之和。要求定义一个fn(a...
printf("Please enter a positive integer(0~9):a=");scanf("%d",&a);if(a>=0 && a<=9) break;} printf("Please enter a positive integer:n=");scanf("%d",&n);for(int i=1;i<=n;i++){ s+=fn(a,i);} printf("s=%d",s);} int fn(int a,int n){ int t;t=a...

求s=a+aa+aaa+aaaa+aaaaa+aaaaaa的C语言程序
include "stdio.h"long f1(long a,long n){ if(n==1)return a;else return(10*f1(a,n-1)+a);} long f2(int n){ long r=0;int i;for(i=1;i<=n;i++)r+=f1(2,i);return r;} void main(){ int n;printf("How many times do you want?");scanf("%d",&n);printf(...