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;
}

运行结果:

相关推荐
wuyk5551 小时前
第2章:六步换相原理全解+STM32工程实战
c语言·开发语言·stm32·单片机·嵌入式硬件
C++ 老炮儿的技术栈6 小时前
从 Qt Designer 属性编辑器的层级可以看到继承链
c语言·数据库·c++·qt·sqlite·visual studio
水饺编程8 小时前
AT&T 汇编语言学习笔记开篇语
c语言·汇编·c++
wuminyu9 小时前
虚拟线程底层ForkJoinPool的工作窃取算法机制
java·linux·c语言·jvm·c++
Darkwanderor15 小时前
线程概念和Linux线程
linux·c语言·c++
clear sky .15 小时前
[freertos源码阅读]task.c任务篇
c语言·开发语言
Darkwanderor16 小时前
Linux线程控制
linux·c语言·c++
一韦以航.16 小时前
C/C++ 基础深挖:strlen 与 sizeof 全方位对比区别
c语言·jvm·c++·算法·面试·c
Darkwanderor16 小时前
多线程的互斥问题和互斥锁解决互斥问题
linux·c语言·c++
(Charon)16 小时前
【C++】手写线程安全队列:mutex + condition_variable 实现生产者消费者模型
c语言·开发语言·c++