计算s = 1/1! + 1/2! + 1/3! + ……+ 1/n!

题目

输入正整数 n,计算 s = 1/1! + 1/2! + 1/3! + ……+ 1/n!的值。

解法

#include <stdio.h>

int main(void){   
    int j, k, n;
    double f, s;
    scanf("%d", &n);
    s = 0; 
    for (k = 1; k <= n; k ++){
    	f = 1;
        for(j = 1; j <= k; j ++)    
			f *= j;
        s = s + 1.0 / f;
    }
    printf("sum=%f\n", s); 
    return 0;
}

分析

#include <stdio.h>

int main(void) {              // 主函数,接收一个参数, 参数类型为 void,返回类型为 int
    int j, k, n;                   // 定义整型变量 j, k, n  
    double f, s;                   // 定义双精度浮点型型变量 f, s
    scanf("%d", &n);               // 接收一个输入,为整数,将该输入赋给 n
    s = 0;
	
	//	计算加法---开始						 
    for (k = 1; k <= n; k ++){     // 循环 k = 1, 2, 3, ..., n
    	f = 1; 
		
		//	计算阶乘---开始				 
        for (j = 1; j <= k; j ++)       // 循环 j = 1, 2, 3, ..., k
			f *= j;                            // f = f * j      
        //	计算阶乘---结束
		
		s = s + 1.0 / f;            
    }
	//	计算加法---结束
	
    printf("sum=%f\n", s);         // 输出 sum = 多少多少 ,%f 这个浮点的占位符 表示 s 的值      
    return 0;                      // 函数返回 0
}

知识点

  1. 注释: // 注释/* 注释 */
  2. 数据类型:
  • void:void 代表空,放在参数位置上则显示说明无形式参数。
  • int:整型
  • double:双精度浮点型
  1. 主函数 main():C语言总是从主函数开始运行的
  2. 输入:scanf()
  3. 输出:printf()
  4. 占位符:
    • %s 字符串
    • %d 整数
    • %i 整数
    • %f 浮点数
Logo

旨在为数千万中国开发者提供一个无缝且高效的云端环境,以支持学习、使用和贡献开源项目。

更多推荐