题目:求s=a+aa+aaa+aaaa+aa...a的值,其中a是一个数字。例如2+22+222+2222+22222(此时共有5个数相加),几个数相加有键盘控制。
程序分析:关键是计算出每一项的值。
#include<stdio.h> int main(){ int a,n,s,t; s=0; //当前总和 printf("请输入数据及数据个数: "); scanf("%d,%d",&a,&n); t=a; //将a赋给t while(n>0) { s=s+t; a=a*10; t=t+a; //t作为每一次的临时值与S相加 n--; } printf("%d",s); }
例如:a=2,n=3;
t=a=2;
n>0
s=s+t=0+2=2; s=s+t=2+22=24; s=s+t=24+222=246;
a=a*10=2*10=20; a=a*10=20*10=200; a=a*10=200*10=2000;
t=t+a=2+20=22; t=t+a=22+200=222; t=t+a=222+2000=2222;
n=2; n=1; n=0;跳出循环