
请回答菜鸟一些C语言问题。求s=a+aa+aaa+aaaa+aa...a的值,其中a是一个数字。
2.程序源代码:main(){inta,n,count=1;-------------------count=1;是什么意思?longintsn=0,tn=0;print...
2.程序源代码:
main()
{
int a,n,count=1;-------------------count=1;是什么意思?
long int sn=0,tn=0;
printf("please input a and n\n");--------为什么要这一步???
scanf("%d,%d",&a,&n);
printf("a=%d,n=%d\n",a,n);---------a=%d,是什么意思?
while(count<=n)
{
tn=tn+a;
sn=sn+tn;
a=a*10;----------------------是什么意思?为什么
++count;
}
printf("a+aa+...=%ld\n",sn);
} 展开
main()
{
int a,n,count=1;-------------------count=1;是什么意思?
long int sn=0,tn=0;
printf("please input a and n\n");--------为什么要这一步???
scanf("%d,%d",&a,&n);
printf("a=%d,n=%d\n",a,n);---------a=%d,是什么意思?
while(count<=n)
{
tn=tn+a;
sn=sn+tn;
a=a*10;----------------------是什么意思?为什么
++count;
}
printf("a+aa+...=%ld\n",sn);
} 展开
5个回答
展开全部
main()
{
int a,n,count=1;-------------------count=1;是什么意思?(这是在对变量赋初值,定义变量的时候可以赋初值,也可以不赋初值)
long int sn=0,tn=0;
printf("please input a and n\n");--------为什么要这一步???(这步可是以省略的,就是一句提示语,翻译过来就是请输入a和n,方便运行,比如别人用的时候就可以知道是干啥了)
scanf("%d,%d",&a,&n);
printf("a=%d,n=%d\n",a,n);---------a=%d,是什么意思?(c语言中“”里的除了%d,%f这类控制变格式和换行\n之类的其余的都是原封不动的输出,这句的a=是直接输出,%d表示输出的是一个整数,就是后边那个a的值)
while(count<=n)
{
tn=tn+a;
sn=sn+tn;
a=a*10;----------------------是什么意思?为什么(将a乘以10的值赋给a,c语言中=表示的是赋值,即将=号右边的值赋给左边,= =表示的是等于,这里用的是while循环,你这里的tn由a aa aaa aaaa aa...a逐渐变化,假如a你给定是3,一开始tn=a=3,sn=sn+tn=3,a*10后为30,将30赋给a,这时候a=30,count加1,如果还小于那个n,继续循环tn=tn+a=3+30=33,这时候tn就成了33,sn=sn+tn=3+33=36,a*10就成了300,count继续加1,如果还小于n,就继续循环,主要是要理解赋值的概念)
++count;
}
printf("a+aa+...=%ld\n",sn);
}
这些都是些基本的定义概念,建议买本谭浩强的c语言看看,适合初学者自学,方便入门。
{
int a,n,count=1;-------------------count=1;是什么意思?(这是在对变量赋初值,定义变量的时候可以赋初值,也可以不赋初值)
long int sn=0,tn=0;
printf("please input a and n\n");--------为什么要这一步???(这步可是以省略的,就是一句提示语,翻译过来就是请输入a和n,方便运行,比如别人用的时候就可以知道是干啥了)
scanf("%d,%d",&a,&n);
printf("a=%d,n=%d\n",a,n);---------a=%d,是什么意思?(c语言中“”里的除了%d,%f这类控制变格式和换行\n之类的其余的都是原封不动的输出,这句的a=是直接输出,%d表示输出的是一个整数,就是后边那个a的值)
while(count<=n)
{
tn=tn+a;
sn=sn+tn;
a=a*10;----------------------是什么意思?为什么(将a乘以10的值赋给a,c语言中=表示的是赋值,即将=号右边的值赋给左边,= =表示的是等于,这里用的是while循环,你这里的tn由a aa aaa aaaa aa...a逐渐变化,假如a你给定是3,一开始tn=a=3,sn=sn+tn=3,a*10后为30,将30赋给a,这时候a=30,count加1,如果还小于那个n,继续循环tn=tn+a=3+30=33,这时候tn就成了33,sn=sn+tn=3+33=36,a*10就成了300,count继续加1,如果还小于n,就继续循环,主要是要理解赋值的概念)
++count;
}
printf("a+aa+...=%ld\n",sn);
}
这些都是些基本的定义概念,建议买本谭浩强的c语言看看,适合初学者自学,方便入门。
展开全部
1 count=1是给变量count(此变量是计数用的)赋初值为1.
2 只是一个提示信息
3 是输出的格式,说明输出的是数字
4 把变量a乘以10再赋给a
2 只是一个提示信息
3 是输出的格式,说明输出的是数字
4 把变量a乘以10再赋给a
本回答被提问者采纳

你对这个回答的评价是?
展开全部
int a,n,count=1;-------------------count=1;是循环变量
printf("please input a and n\n");--------提示用户输入
printf("a=%d,n=%d\n",a,n);---------a=%d,是输出结果为十六进制
a=a*10;----------------------就是类似自增,不过他的程序貌似有问题
printf("please input a and n\n");--------提示用户输入
printf("a=%d,n=%d\n",a,n);---------a=%d,是输出结果为十六进制
a=a*10;----------------------就是类似自增,不过他的程序貌似有问题
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
程序源代码:
main()
{
int a,n,count=1;-------------------count=1;这里是为了循环计数,就是循环次数
long int sn=0,tn=0;
printf("please input a and n\n");--------这一步是要提示你输入一a,和一个循环的次数n,n与count做比较。
scanf("%d,%d",&a,&n);
printf("a=%d,n=%d\n",a,n);---------a=%d,这里面就是说输出你输入的那个a,例如你输入a是5,n是6.屏幕就会打印出a=5,n=6.
while(count<=n)这里就是你输入的那个n和count比较了,循环,你得看看书了
{
tn=tn+a;
sn=sn+tn;
a=a*10;----------------------这里是关键的部分,你想5变成55 是怎么变得呢?是不是5×10+5呢?上面说的,就是这个问题。
++count;//执行一次,count就做+1的操作,直到count=n,循环结束。
}
printf("a+aa+...=%ld\n",sn);这就是最后的打印输出了。
}
main()
{
int a,n,count=1;-------------------count=1;这里是为了循环计数,就是循环次数
long int sn=0,tn=0;
printf("please input a and n\n");--------这一步是要提示你输入一a,和一个循环的次数n,n与count做比较。
scanf("%d,%d",&a,&n);
printf("a=%d,n=%d\n",a,n);---------a=%d,这里面就是说输出你输入的那个a,例如你输入a是5,n是6.屏幕就会打印出a=5,n=6.
while(count<=n)这里就是你输入的那个n和count比较了,循环,你得看看书了
{
tn=tn+a;
sn=sn+tn;
a=a*10;----------------------这里是关键的部分,你想5变成55 是怎么变得呢?是不是5×10+5呢?上面说的,就是这个问题。
++count;//执行一次,count就做+1的操作,直到count=n,循环结束。
}
printf("a+aa+...=%ld\n",sn);这就是最后的打印输出了。
}
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
count=1,这是一个赋值语句,count是变量名
printf("please input a and n\n"),这句要不要都可以,这句是在输入前给你个提示,在屏上显示please input a and n,
a=%d,输出时显示a=,等号后面是a的值,%d是输出格式,表示十进制整数。
a=a*10,你不是要求a+aa+aaa+aaaa+aa...a的值吗,我们只能用a来表示一位数,以后的就要乘10,再加a了,用数来表示一下就是:如果a=1,1+(1*10+1)+(1*10*10+1*10+1)......
不知道明白了没有。
printf("please input a and n\n"),这句要不要都可以,这句是在输入前给你个提示,在屏上显示please input a and n,
a=%d,输出时显示a=,等号后面是a的值,%d是输出格式,表示十进制整数。
a=a*10,你不是要求a+aa+aaa+aaaa+aa...a的值吗,我们只能用a来表示一位数,以后的就要乘10,再加a了,用数来表示一下就是:如果a=1,1+(1*10+1)+(1*10*10+1*10+1)......
不知道明白了没有。
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询