题目:求 s=a+aa+aaa+aaaa+aa...a的值,其中 a 是一个数字。例如 2+22+222+2222+22222(此时 共有 5 个数相加),几个数相加有键盘控制。
1.程序分析:
关键是计算出每一项的值
2.程序源代码:
#include<stdio.h>
int main()
{
int a,n,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);
while(count<=n)
{
tn=tn+a;
sn=sn+tn;
a=a*10;
++count;
}
printf("a+aa+...=%ld\n",sn);
}
3.代码及编译结果截图:
4.知识点:
while(循环条件){……循环体……}
翻译成中文就是:只要(循环条件)成立,就重复执行{……循环体……}
特点是:先判断,再执行,循环体可能一次都不执行。
5.拓展:
do{……循环体……}while(循环条件);
翻译成中文就是:执行{……循环体……},只要(循环条件)成立,就重复执行;
特点是:先执行,再判断,循环体至少会执行一次。