繁体   English   中英

如何显示数字的总和除以其阶乘? [关闭]

[英]How to display sum of numbers divided by their factorial? [closed]

我是初学者,在做这个程序时我真的很困难。
问题是:

(1/1!)+(2/2!)+(3/3!)+(4/4!)- - - -n

所以这里有 n 个项(其中一个数字除以其阶乘),我必须显示 scanf 函数中给出的任意数量项的总和的输出。

我只知道一件事是这个程序可以通过使用“Nested for”循环来完成,但我还没有完全掌握 C 语言。 所以你们必须帮助我解决这个问题。 :)

#include <stdio.h>
#include <conio.h>

void main(void){
    int s,a,b,n,fact=1;
    //clrscr();
    printf("Enter number of terms=");
    scanf("%d",&n);
    for(a=1;a<=n;a++) {
        fact=fact*a;
        b=(a/fact);
        printf("Sum=%d",s);
    }
    getche();
}

PS我必须用“嵌套for”循环来做。

不,您不需要任何嵌套的 for 循环来解决您的问题。 以下是您可以遵循的程序:

function factorial
    Input: numbers L.
    Output: factorial of L.

function sum
    Input: n.
    Output: sum.

sum = 0;
for i = 1 to n, do
   sum ← sum + (i / factorial(i))
return sum 
#include <stdio.h>

int main(void) {
    // your code goes here
    int n;
    float sum = 0,d,fact =1,j,i;
    printf("Enter the number:");
    scanf("%d",&n);
    for(i=1;i<=n;i++){
        fact = 1;
        for (j = 1; j <= i; j++){
            fact = fact * j;
        }

        d =  (float) i / (float) fact ;

        sum = sum  + d;

    }

  printf("sum = %f", sum);
    return 0;
}

它的工作..你可以在这里检查:- https://ideone.com/JVXQVX

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM