解题思路:在已知a=2,输入n的情况下,显然n就是循环执行的次数。令sn=a;i=1,在while(i<n)循环内设置a=a*10+2;
才能得到题目的2+22+222+2222+22222的情况。
注意事项:
注意循环条件,因为sn=a在循环外a已经被“加”了一次,因此while(i<n):执行n-1次求和!
参考代码:
#include<stdio.h>
int main()
{
int a=2,i=1,n,sn=0;
scanf("%d",&n);
sn=a;
while(i<n)
{
a=a*10+2;
sn+=a;
i++;
}
printf("%d\n",sn);
return 0;
}
0.0分
0 人评分
2005年春浙江省计算机等级考试二级C 编程题(1) (C语言代码)浏览:689 |
C语言程序设计教程(第三版)课后习题8.1 (C++代码)浏览:756 |
C语言训练-排序问题<1> (C++代码)浏览:588 |
【出圈】 (C语言代码)浏览:550 |
C语言程序设计教程(第三版)课后习题5.4 (C语言代码)浏览:1282 |
C语言训练-数字母 (C语言代码)浏览:649 |
C二级辅导-进制转换 (C语言代码)浏览:660 |
2006年春浙江省计算机等级考试二级C 编程题(1) (C语言代码)浏览:661 |
模拟计算器 (C语言代码)浏览:2285 |
快速排序算法1浏览:875 |