请回答菜鸟一些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);
}
展开
 我来答
叔叔聊感情
2009-06-10 · TA获得超过920个赞
知道小有建树答主
回答量:431
采纳率:0%
帮助的人:276万
展开全部
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语言看看,适合初学者自学,方便入门。
wangyunlonggzh
2009-06-10 · TA获得超过1201个赞
知道小有建树答主
回答量:802
采纳率:0%
帮助的人:431万
展开全部
1 count=1是给变量count(此变量是计数用的)赋初值为1.
2 只是一个提示信息
3 是输出的格式,说明输出的是数字
4 把变量a乘以10再赋给a
本回答被提问者采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
王茜茜heaven
2012-12-21
知道答主
回答量:1
采纳率:0%
帮助的人:1654
展开全部
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;----------------------就是类似自增,不过他的程序貌似有问题
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
等待的角落
2009-06-10 · TA获得超过318个赞
知道小有建树答主
回答量:295
采纳率:0%
帮助的人:303万
展开全部
程序源代码:
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);这就是最后的打印输出了。
}
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
cyljz_wl
2009-06-10 · TA获得超过339个赞
知道答主
回答量:125
采纳率:0%
帮助的人:48.1万
展开全部
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)......
不知道明白了没有。
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 更多回答(3)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式