前言:三个问题,相互关联。(使用while语句)
正文:
Q:非负整数n的阶乘可以表示为n!(读作n的阶乘),其定义如下:n!=n*(n-1)*…
2
1(n>=1)且规定0!=1。
(1)请编写一个程序,读入一个非负整数(小于等于15),计算并输出其阶乘。
(2)请编写一个程序,利用下面的公式来估算数学常数e的值。e=1+1/1!+2/2!+3/3!+…
(3)请编写一个程序,利用下面的公式来估算数学常数e的x次方的值。ex=1+x/1!+x2/2!+x3/3!+…
源代码:
(1)
#include<stdio.h>
int main(){
int x,y=1,z;
printf("请输入小于等于15的非负整数:");
scanf("%d",&x);
z=x;
while(x>=1){
y=y*x;
x--;
}
printf("%d!为%d",z,y);
}
(2)
#include<stdio.h>
int main(){
int x;
float e=1.0, a=1.0,b=1.0;
printf("请输入近似项数(小于等于15):");
scanf("%d",&x);
while(b<=x){
a=a*b;
e=e+1/a;
b++;
}
printf("取%d时e的值为:%f",x,e);
}
(3)
#include<stdio.h>
int main(){
int m,i=1,a=1;
double n,b=1,e=1;
printf("请输入x的值(接近于0的浮点数):");
scanf("%lf",&n);
printf("请输入近似项数(小于等于15):");
scanf("%d",&m) ;
while(i!=m+1){
b=b*n;
a=a*i;
e=e+b/a;
i++;
}
printf("取%d项时e的%f次方值为:%f",m,n,e);
}
版权声明:本文为weixin_52621330原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。