输入2个正整数a和n,求a+aa+aaa+aa…a(n个a)之和。一直是死循环,谁能帮忙看看

例如,输入2和3,输出246(2+22+222)。【输入形式】从键盘输入正整数a和正整数n。【输入输出样例1】(下划线部分表示输入)Inputa,n:85s... 例如,输入2和3,输出246(2+22+222)。
【输入形式】
从键盘输入正整数a和正整数n。
【输入输出样例1】(下划线部分表示输入)
Input a, n: 8 5
s=98760 */
#include<stdio.h>
int main(void)
{
int a,n,s;

printf("Input a, n: ");
scanf("%d",&a);
scanf("%d",&n);
for(n>=0;;){
s=a*n+s;
a=a*10;
n--;
}
printf("s=%d",s);
return 0;
}
展开
 我来答
nigoole
推荐于2017-09-27 · TA获得超过1369个赞
知道小有建树答主
回答量:675
采纳率:71%
帮助的人:443万
展开全部

有一个致命的错误,s没有初始化0;

#include<stdio.h>

int main(void)

{

 int a,n,s=0; 

 printf("Input a: "); //这样输出好看点

 scanf("%d",&a); 

 printf("Input n:");//也不容易混淆

 scanf("%d",&n); 

 while(n>=0)//你这种for最好改用while

 { 

  s=a*n+s; 

  a=a*10; 

  n--; 

 } 

 printf("s= %d\n",s);

 return 0; 

更多追问追答
追问
for和while怎么选择
追答
大体上用法都差不多,只是习惯而已,while是给定条件,直到他超出条件范围就停止,因为你的N相当于已经给定了,每次执行后都-1,我个人觉得while好用点,for是从开始条件一直执行到循环条件,对于你上面的循环,你只要改为for(;n>=0;) 因为判断条件只能在中间。
hnzyctn
2013-04-25 · TA获得超过3962个赞
知道小有建树答主
回答量:4126
采纳率:0%
帮助的人:1515万
展开全部
2 + 22 222。 。 。
程序是2 + 2 * 2 +2 * 2 * 2。 。 。

如果你不这样做溢出检查您可以使用

(INT I = 0; <N; + +)

S. = S + 2 * (NI)* POW(10,I);

}的
考虑溢出阵列持有每个位的数量是太麻烦了,他们希望它
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
百度网友28b4182
2013-04-25 · TA获得超过7220个赞
知道大有可为答主
回答量:4847
采纳率:100%
帮助的人:1796万
展开全部
#include<stdio.h>
int main(void)
{
int a,n,s=0;//s赋初值

printf("Input a, n: ");
scanf("%d",&a);
scanf("%d",&n);
for(;n>=0;){//条件写中间
s=a*n+s;
a=a*10;
n--;
}
printf("s=%d",s);
return 0;
}
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
ncutyuhaitao
2013-04-25 · TA获得超过1070个赞
知道小有建树答主
回答量:607
采纳率:0%
帮助的人:480万
展开全部
for(n>=0;;)
这个语句不要这么用;
你换成:
while (n>=0)
即可。
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
chr1999
2013-04-25 · TA获得超过1056个赞
知道小有建树答主
回答量:2462
采纳率:0%
帮助的人:1229万
展开全部
int main(void)
{
int a,n,s,t;
printf("Input a, n: ");
scanf("%d",&a);
scanf("%d",&n);
t=a;
s=0;
for( ;n>0;n-- ){
s+=t;
t= t*10+a;
}
printf("s=%d",s);
return 0;
}
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 更多回答(4)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

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

类别

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

说明

0/200

提交
取消

辅 助

模 式