C语言求阶乘问题,找大神
输入一个正整数r,做r次下面的运算:
输入1个正整数n,求s的前n项和,s=1/1!+2/2!+3/3!+...n/n!
满天星17
浏览 1260回答 3
3回答
-
这都不会
#include<stdio.h>
int main() {
float sum = 0;
int i, j, n, fact;
scanf("%d", &n);
for(i = 1; i <= n; i++) {
fact = 1;
for(j = i; j > 0; j--) {
fact *= j;
}
sum += (1.0 * i)/fact;
}
printf("%f", sum);
return 0;
}
-
望远
#include<stdio.h>
void main()
{
int n,m,sum;
double result;
printf("请输入你要测试的数据组数:");
scanf("%d",&n);
for(int i=1;i<=n;i++)
{
sum=1;
result=0;
printf("请输入第%d组测试数据:",i);
scanf("%d",&m);
for(int j=1;j<=m;j++)
{
sum=sum*j;
result=result+1.0/sum;
printf("1/%d!+",j);
}
printf("\b=%.4lf\n",result);
}
}
-
满天星17
多谢!我已经会了,程序如下:
#include<stdio.h>
int main()
{
int a,b,sum;
int repeat,i;
float s=0,t=0;
scanf("%d",&repeat);
for(a=0;a<repeat;a++)
{
scanf("%d",&b);
sum=1;
for(i=1;i<=b;i++)
{ sum*=i;
s=1.0/sum;
t+=s;
}
printf("%f\n",t);
}
return 0;
}
打开App,查看更多内容