一道C语言循环题s=a+aa+aaa+…+aa…a(n个a)之值,其中a是一个数字,n代表a的位数
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
int main() {
int n,temp,i,sum=0,a;
scanf("%d %d",&n,&a);
temp=a;
for(i=0; i<n; i++) {
sum+=temp;
temp=temp*10+a;
}
printf("%d
",sum);
}
扩展资料:
for循环语法
1、for循环是编程语言中一种循环语句,语句最简形式为:
for( ; ; )
2、一般形式为:
for(单次表达式;条件表达式;末尾循环体)
{
中间循环体;
}
其中,表示式皆可以省略,但分号不可省略,因为“;”可以代表一个空语句,省略了之后语句减少,即为语句格式发生变化,则编译器不能识别而无法进行编译。
参考资料来源:百度百科-for循环
#include <stdio.h>
void main()
{
int i,k=0,s=0,a,n;
scanf("%d%d",&a,&n);
for(i=1;i<=n;i++)
{k=k*10+a;s+=k;}
printf("Sn=%d",s);
}
int result;
for(int i=0;i<n;i++){
int temp=0;
for(int j=i;j>0;j--){
temp+=a*pow(10,j);
}
result+=temp;
}
一道C语言循环题s=a+aa+aaa+…+aa…a(n个a)之值,其中a是一个数字,n代 ...
include <stdio.h>void main(){int i,k=0,s=0,a,n;scanf("%d%d",&a,&n);for(i=1;i<=n;i++){k=k*10+a;s+=k;}printf("Sn=%d",s);}
这是一道C语言编程题:求s=a+aa+aaa+⋯⋯+aa⋯a,最后一项为n个a...
…+a*10^n-1得到的for(; i <= n; i++){sum += temp; temp *= 10;\/\/a=a*10 }return sum; } long getSum(long n, long a){\/\/计算a+aa+aaa…… int i = 1;long sum = 0;for(; i <= n; i++)sum += getVal(i,a); return sum; } int main(){long n = ...
【c语言编程题】输入a,n输出s=a+aa+aaa+…n项之和。要求定义一个fn(a...
s+=fn(a,i);} printf("s=%d",s);} int fn(int a,int n){ int t;t=a;for(int i=2;i<=n;i++){ a=a*10+t;} return a;}
C语言题目求Sn=a+aa+aaa+aaaa+...+aaa...a(n个a)之值,其中a是一个数字...
int n,temp,i,sum=0,a;scanf("%d %d",&n,&a);temp=a;for(i=0; i<n; i++) { sum+=temp;temp=temp*10+a;} printf("%d\\n",sum);}
计算s=a+aa+aaa+aaaa+...+aaaaa(n个a)用c语言
printf("s=%ld\\ ",f2(n));} 输入一个加数的项数,不要太大,最大19,再大就溢出了.r+=f1(2,i);中的2可以按a的值取。就算用了浮点型,这种问题还是会溢出,一直加下去,s→∞,有什么意义!大家不要再加答案了,这种问题就是一个恶作剧。减大家的答案采纳率的,以后别上当,我就遇到过几...
求S=a+aa+aaa+...+aaa...a的编程题
求Sn=a+aa+aaa+...+aaa...a(n个a)之值,其中a是一个数字。例如;2+22+222+2222+22222(此时n=5),n由键盘输入。初看的话,觉得它有点棘手,觉得代码要挺长的,但事实上却可以这样写:c语言代码:include <stdio.h> void main(){ int a,n,i=1,sn=0,m=0;printf("a,n=");sc...
C语言 编程问题 菜鸟!!!
首先我觉的你是把题给搞错了,s=a+aa+aaa+...+aa...a的意思是s=3+33+333+...+33...3这种。而不是s=3+3*3+3*3*3+...+3*3*...*3这种。 下面是我写的:include <stdio.h> int main(){ long long S = 0;long long k = 0;int a = 0, n = 0;printf("Please ...
计算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,输出结果s,其中s与a的关系是:s=a+aa+aaa+aaaa+aa...a,最 ...
C语言程序:include <stdio.h>void main(){ int a, n;long f, s;int i; printf("请输入a、n(以空格分隔):");scanf("%d%d", &a, &n);f = s = 0;for(i=0; i<n; i++){ f = f * 10 + a;s += f;} printf("a + aa + aaa + ... aa..a = %ld\\n...
如何用c语言编s=a+aa+aaa+aaaa+a...a
main(){ int a,n,i,s=0,x;scanf("%d %d",&a,&n);for(i=1,x=a;i<=n;i++){ s+=x;x=x*10+a; } } 注意,int的数据范围是32767 想做的数据大可以使用long数据类型