编写一个程序,从键盘输入一个正整数n,计算表达式1+1/2!+1/3!+1/4!+...+1/n! 的值(计算结果为小数形式)。 要求:设计一个函数int fac(int m)计算m!。 例如:输入6,输出1.718055。
#include [stdio.h] int fac(int m) //计算m! { int sum=1; for(int i=2; i[=m; i++) sum=sum*i; return sum; }
举一反三
- 下列程序接受一个整数n(1<=n<=12),计算n!,然后输出n!中非0数字的个数。其中函数fac( )用于计算阶乘,函数nzero( )用于计算非0数字的个数。 long fac(int n) /* 计算n!并返回 */ { long m=n; while(_________) m*=n; return m; } int nzero(long m) /*计算m中有几个非0数字并返回 */ { int num=_____________; while(m>0L) { if(_________) num++; m/=10L; } return num; /* num是m中非0数字个数 */ } void main( ) { int n; do{ printf(“输入一个1和12之间的整数:”); scanf(“%d”,&n); }while(____________); /*如果输入不正确,则重复输入 */ n<1||n>12 printf(“%d!中有%d个非0数字。\n”,n,_________); }
- 编写一个函数,计算s=1+1/2!+1/3!+·······1/N!
- 1.程序功能:输入n的值(n<10),计算1!+2!+3!+......+n!,并输出计算结果。 #include int main() { int i, n; long sum=0,fac=1; //fac存储每个加项(阶乘)的值 printf("请输入n的值:"); scanf("%d",&n); for( i=1; i<=n; i++) { ___________ //后一加项与前一加项的关系 sum=sum+fac; } printf("和为%ld ",sum); return 0; }
- 输入一个正整数 n,输出 1~n 之和。要求自定义函数求 1~n 之和,写出函数定义和调用函数。若要计算 m~n(m<n)之和,又该如何定义?
- 题2:设计程序,在文本框中输入一个正整数N,计算S=1*2*3*...*n的值。
内容
- 0
从键盘上输入一个正整数n,计算并输出n的阶乘。 例如,如果从键盘上输入8, 程序的运行结果应为:The result is: 40320。 #include #include #include long fac( int n ) { int i; long t=1; for( i=2;i<=n;i++) t = t*i; return (t); } main() { int n; long int s; clrscr(); printf("Enter an integer number:"); /************found************/ ____(1)____; s = fac(n); /************found************/ printf("The result is : ____(2)____ ",s); }
- 1
5-1自然数之和题目描述从键盘上输入任意一个整数n,计算1到n的和。输入从键盘输入任意整数n。输出输出1到n的和。示例输入3示例输出6
- 2
设计一个函数来计算正整数n的阶乘,再设计一个函数调用前面的函数,计算从1到正整数m的阶乘之和,然后在主程序中调用第二个函数,实现计算从1到程序输入的整数k所有阶乘之和。
- 3
【简答题】2-15 编写程序,输入一个正整数n,计算 的前 n 项之和。 2-16 编写程序,输入两个正整数m 和n,计算 m! + n!。 1 编写程序,输入实数x 和正整数n,计算 ,不允许调用pow 函数求幂。 2-18 输入一个正整数n,生成一张3 的乘方表,输出 到 的值,可以调用幂函数计算3 的乘方
- 4
算法可以有0~n(设n、m为正整数)个输入,有()个输出。 A: 0~m B: 0 C: 1~m D: 1