4—函数
1. 求1 + 1/2! +....+ 1/n!
1.1.
题目要求
输入1 个正整数n,计算 s 的前n项的和(保留 4 位小数)。    s = 1 + 1/2! +....+ 1/n!
要求定义并调用函数fact(n)计算n的阶乘。
1.2.
测试结果(输入结束回车符用<回车>表示) (1)输入:2<回车>
输出: 1.5000 (2)输入:6<回车>
输出:1.7181 (3)输入:10<回车> 输出:1.7183
2. 求a+aa+aaa+aa…a
2.1.
题目要求
输入2个正整数a和n, 求a+aa+aaa+aa…a(n个a)之和。
要求定义并调用函数fn(a,n),它的功能是返回aa…a(n个a)。例如,fn(3,2)的返回值是33。
2.2.
测试结果(输入结束回车符用<回车>表示) (1)输入:2 3<回车>
输出: 246   (2+22+222) (2)输入:8 5<回车>
输出:98760 (8+88+888+8888+88888)
3. 统计一个整数中数字的个数
3.1.
题目要求
读入1 个整数,统计并输出该数中2的个数。
要求定义并调用函数countdigit(number,digit),它的功能是统计整数number中数字digit的个数。例如,countdigit(10090,0)的返回值是3。
3.2.
测试结果(输入结束回车符用<回车>表示) (1)输入:-21902<回车>
输出: count=2    (-21902中有2个2)
(2)输入:2<回车> 输出:count=1    (有1个2)
(3)输入:345543<回车>
输出:count=0    (345543中没有2)
4. 判断素数
4.1.
题目要求
输入一个正整数n,如果它是素数,输出\"YES\",否则,输出\"NO\"(素数就是只能被1和自身整除的正整数,1不是素数,2是素数)。
要求定义并调用函数prime(m)判断m是否为素数。
4.2.
测试结果(输入结束回车符用<回车>表示) (1)输入:1  <回车>
输出: NO    (1不是素数) (2)输入:2<回车>
输出:YES   (2是素数) (3)输入:9<回车>
输出:NO    (9不是素数)
5. 统计素数并求和
5.1.
题目要求
输入2 个正整数m和n(1<=m,n<=500),统计并输出m 和n之间的素数的个数以及这些素数的和(素数就是只能被1和自身整除的正整数,1不是素数,2是素数)。 要求定义并调用函数prime(m)判断m是否为素数。
5.2.
测试结果(输入结束回车符用<回车>表示) (1)输入:1 10<回车>(m=1, n=10)
输出:count=4, sum=17    (1到10之间有4个素数:2,3,5,7) (2)输入:20 35<回车> (m=20, n=35)
输出:count=3, sum=83    (20到35之间有3个素数:23, 29, 31) (3)输入:14 16<回车>(m=14, n=16)
输出:count=0, sum=0     (14到16之间没有素数)
6. 输出 Fibonacci 序列
6.1.
题目要求
输入2 个正整数m和n(1<=m,n<=10000),输出m 和n之间所有的Fibonacci数。 Fibonacci 序列(第1项起):1  1  2  3  5  8  13  21 ......
要求定义并调用函数fib(n),它的功能是返回第n项Fibonacci数。例如,fib(7)的返回值是13。
输出语句:printf(\"%ld \
6.2.
测试结果(输入结束回车符用<回车>表示) (1)输入:1 10<回车>(m=1, n=10)
输出: 1 1 2 3 5 8        (1到10之间的Fibonacci数) (2)输入:20 100<回车>(m=20, n=100)
输出: 21  34  55       (20到100之间的Fibonacci数) (3)输入:1000 6000<回车>(m=1000, n=6000)
输出: 1597  2584  4181   (1000到6000之间的Fibonacci数)
7. 输出m 到n之间的所有完数
7.1. 题目要求:求完数
输入2 个正整数m和n(1<=m,n<=1000),输出m 到n之间的所有完数(完数就是因子和与它本身相等的数)。
要求定义并调用函数digitsum (number),它的功能是返回number的因子和。例如,digitsum(12)的返回值是16(1+2+3+4+6)。 7.2. 测试结果(输入结束回车符用<回车>表示)
(1)输入:20  500<回车>  输出:28  496  (2)输入:1  100<回车>  输出:1  6  28
8. 求各位数字的立方和等于它本身的数
8.1. 题目要求
输入2 个正整数m和n(1<=m,n<=1000),输出m 到n之间的所有满足各位数字的立方和等于它本身的数。
要求定义并调用函数is(number)判断number的各位数字之立方和是否等于它本身。
输出语句:printf(\"%d \
8.2. 测试结果(输入结束回车符用<回车>表示,括号内是说明) (1)输入:100 400<回车>(说明:即m=100, n=400)  输出:153 370 371 (说明:1*1*1+5*5*5+3*3*3=153; 3*3*3+7*7*7=370;
3*3*3+7*7*7+1*1*1=371)
(2)输入:1 100<回车> (说明:即m=1, n=100)  输出:1
9. 将一个整数逆序输出
9.1. 题目要求:
输入一个整数,将它逆序输出。
要求定义并调用函数reverse(number),它的功能是返回number的逆序数。例如reverse(12345)的返回值是54321。
9.2. 9.2测试结果(输入结束回车符用<回车>表示) (1)输入:123456<回车>  输出:654321  (2)输入:-100<回车>  输出:-1
(3)输入:99<回车>  输出:99