C语言:编程实现1!+2!+3!+4!+……+n!

分析:

#include<stdio.h>//这是一个预处理指令,将stdio.h头文件包含到程序中,以便使用输入输出函数。

int main()//这是程序的主函数,是程序执行的入口点。

int i, a = 1, t = 0, n;//定义了整型变量i、a、t和n。其中,i用于循环计数,a用于保存每个数字的阶乘结果,t用于保存阶乘之和,n用于保存用户输入的值。

printf("please input n:");//打印提示信息,要求用户输入n的值。

scanf("%d", &n);//使用scanf函数从标准输入中读取用户输入的n的值,并将其保存在变量n中。

for(i = 1; i <= n; i++)//开始一个循环,从1循环到n,每次循环增加i的值。

{...}//循环体,包含了以下两个步骤:

a. a = a * i;//计算当前i的阶乘,并将结果保存在变量a中。阶乘是将当前数字与之前所有数字的乘积。

b. t = t + a;//将当前阶乘结果a累加到变量t中,得到阶乘之和。

printf("The result of "1!+2!+3!+.....+n!"=%d\n", t);//使用printf函数输出计算结果,%d是格式化字符串的占位符,将t的值插入到字符串中。

return 0;//程序执行完毕,返回0表示成功结束。

代码:

复制代码
#include<stdio.h>
int main()
{
	int i,a=1,t=0,n;
	printf("please input n:");
	scanf("%d",&n);
	for(i=1;i<=n;i++)
	{
		a=a*i;
		t=t+a;
	}
	printf("The result of"1!+2!+3!+.....+n!"=%d\n",t);
	return 0;
}

运行结果:

相关推荐
代码中介商7 小时前
银行管理系统的业务血肉 —— 流程、状态机、输入校验与持久化(下篇)
c语言·算法
爱编码的小八嘎9 小时前
C语言完美演绎9-12
c语言
Navigator_Z11 小时前
LeetCode //C - 1031. Maximum Sum of Two Non-Overlapping Subarrays
c语言·算法·leetcode
leoufung16 小时前
LeetCode 30:Substring with Concatenation of All Words 题解(含 C 语言 uthash 实现)
c语言·leetcode·c#
爱编码的小八嘎16 小时前
C语言完美演绎9-6
c语言
SunnyByte17 小时前
线性表——单链表的增删查改操作
c语言·单链表
SunnyByte17 小时前
线性表——双向链表
c语言·链表
jimy117 小时前
C 语言的 static 关键字作用
c语言·开发语言·算法
handler0118 小时前
算法:图的基本概念
c语言·开发语言·c++·笔记·算法·图论
木木_王18 小时前
嵌入式Linux学习 | 数据结构 (Day03)顺序表与单链表 超详细解析(含 C 语言实现 + 作业 + 避坑指南)
linux·c语言·数据结构·学习