学习目标:120秒内 一气呵成 打完代码,并且运行正确,并且提交正确。
【题意】
本题:输入一个整数,求其各个位的数字和。
【输入格式】
一个数字n(n的类型是int)
【输出格式】
输出n各个位的数字的和。
【样例输入】
12453
【样例输出】
15
【提示】
为了大家可以顺利做这道题,引入以下的例子,但不是本题,不能用下面的代码提交的
输入n,输出s=1+2+3+4+……+n的值(用while实现)
#include<cstdio>
using namespace std;
int main()
{
int n,s,i;
scanf("%d",&n);
s=0;i=1;
while(i<=n)//如果满足括号的条件就继续进入循环
{
// 循环里面做两件事,对s加i,和对i的改变
s=s+i;
i=i+1;
}
printf("%d\n",s);
return 0;
}
【练习】
1、计算 s = n!, n!表示n的阶乘, n!= 1*2*3*4*…*n ,其中n由键盘输入。输出s的值。
2、输入n,求s=1+1/2+1/3+…+1/n (注:s = s + 1.0/i )(保留4位小数)
3、先输入n,然后输入n个实数。求这n个数的平均值,保留2位小数。
比如输入: 3 1.5 3.5 3.6,输出:2.87
4、求s=11+22+33+..+nn (n<=9)
5、求s=n+nn+nnn+……+ nnn…nnn(n个n) (n<=9)
比如:n=5,s=5+55+555+5555+55555= 61725
6、【for+数组】Fibonacci序列:1、1、2、3、5、8、13、21……,输入n(n<=1000),求第n个数是多少?
比如,输入:10,输出:55
【要求】只能用while完成