新手求教 c语言 关于a+aa+aaa........的问题,不知道下面的程序出现什么错误了, 在编译和组建时没有问题
#include
long fun(int a,int n)
{
int j;
long s=0,t=0;
for(j=0;j<n;j++)//这个地方循环累加,然后最后得出的就是aaaaaaaa……
t=t*10+a;
s=t;//这个地方是吧算出来的值赋给s
for(j=1;j<n;j++)//这个循环就开始减了。
{
t=t/10;//因为是long型的,所以这一句话可以减少一个a(aaaaa/10=aaaa)(假如有n=5)
s=s-t;//这个地方就是aaaaa-aaaa,然后在循环下来就再减一个aaa,再循环就再减一个aa,然后再减一个a,之后就会推出for循环了
}
return(s);
}
main()
{
int a,n;
printf("
Please enter a and n:");
scanf("%d%d",&a,&n);
printf("The value of function is% ld
",fun(a,n));
}
回答即可得2分,回答被采纳则获得悬赏分以及奖励20分
#include<math.h>int main() {
int a,n,i = 0,s = 0,t = 0;
printf("请输入a,n的数值:");
scanf("%d,%d",&a,&n);
while(i < n) {
t = 10 * t + a;
s = s + t;
i++;
}
printf("a + aa + aaa + .... = %d\n",s);
return 0;
}
a=pow(10,i-1)*a; 此行改为: a=10*a;
a=pow(10,i-1)*a;
改为
a*=10;
去掉
#include<math.h>
这行
a=pow(10,i)*a;
为什么i-1呢? 第一次循环时候a已经加到t里边了,然后再10的1-1次方是什么意思?
用C语言编写程序 s=a+aa+aba+abba+abbba+………共n个数相加 a b n由...
include<stdio.h> include<math.h> int main(void){ double s = 0;int a, b, n;int i,j;int m; \/\/定义通项 printf("请输入a、b和n值(中间以空格分隔):");scanf("%d %d %d", &a, &b, &n);for (i=0; i<n; i++){ m = a;j = 0;while(j<i) \/\/计算bb....
C语言 a+aa+aaa+...
分析:这里n值达到了14,远超了整数的范围,但未超出double类型数据有效范围,因此,可用double来存储n个a的结果。整形会溢出。实现过程:定义一个double变量da,累加结果变量sum,初始化为0 定义两个整形变量a n用来存储输入数据 循环生成a, aa,aaa等数据,存储到da中,进行累加 : da=da*10+a; ...
C语言求s=a+aa+aaa+aaaa+aa...a的值,大神给我每段解释一下吧_百度知...
例如2+22+222+2222+22222(此时共有5个数相加),几个数相加有键盘控制。\/ public static void main(String[]args){ Scanner sca=new Scanner(System.in);System.out.println("请输入一个数");int num=sca.nextInt();int n=0,sum=0;for(int i=1;i<=5;i++){ n=n*10+num;sum=sum+...
c语言中将a+aa+…n个a的值输出如何写这个程序?如输入a为3,n为2输出结...
and digits:"); scanf("%d%*c%d",&a,&digit); for(i = 0;i < digit;i++) { s += power*a; sum += s; power *= 10; } printf("The summary is:%d\\n",sum); return 0;} 附测试图:
C语言 求Sn=a+aa+……+aaa……a(n个a),其中a和n是从键盘输入。怎么做啊...
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;} 修改了一下,,现在可以了 ...
C语言求Sn=a+aa+aaa...+aa...aa(有n个a),a,n由键盘输入。
t中依次保存的是Sn的每一项,即a、aa、aaa...,只要将所有的t加起来,就是Sn的结果,保存在s里。当t=第k项aaa...a(共k个a)时,变量a=a00...0共k位(第一位为a,剩下位为k-1个0),a*10即在右侧补0,此时a为k+1位,其中有k个0。下一次循环时将有k位的t加上a,则a中的k...
求a+aa+aaa+aaaa的和c语言
使用迭代的方法,只要一个循环,就可以实现上述的功能。int a,n=4,i,t=0,s=0;scanf("%d",&a);for(i=1;i<=n;i++){t=t*10+a;s+=t;} printf("%d\\n",s);
计算s=a+aa+aaa+aaaa+...+aaaaa(n个a)用c语言
include "stdio.h"int main(){ int m,n,s,i,x,y;s = 0;i = 0;printf("输入1个数码和位数:");scanf("%1d%d",&x,&y);for(n=1;n<=y;n++){ for(m=1;m<=n;m++)i = i * 10 + x;printf("%d+",i);s = s + i;i = 0;} printf("\\b=%d",s);} ...
帮忙算下a+aa+aaa+aaaa...=?如2+222+222+2222=2468,在c语言编程里面怎 ...
\/\/后一个数 等于 前一个数* 10 + 基数\/\/2222 = 222 * 10 +2long a=2;long b,n;long temp;long hj=0;\/\/合计n=4; \/\/计算到四个a aaaatemp=0; \/\/前一个数for(b=1;b<=4;b++){temp=temp*10+a; \/\/ 前一个数 * 10 + 基数hj=hj+temp; \/\/合计 把每个...
C语言里求a+aa+aaa+aaaa+……有代码但是不清楚啥意思,输入a和n(位数...
1.i是工作变量,就是循环体中控制加i个a..a 2.s是当时循环体中求到第i个a...a的和,也就是a+aa+aaa+a...a最后一个是i个a 3.这三句中t是表示a...a(i-1个a),t*10+a之后就变成了a...a(i个a),s就是把t加上,那么加到现在加了i个不同的a...a ...