C语言实例 001 求阶乘

本文指导如何使用C语言编写代码来计算给定整数的阶乘,包括理解阶乘的定义、处理1和0的特殊情况、循环累乘以及防止因数值过大导致的溢出问题。附有B站视频教程链接。
摘要由CSDN通过智能技术生成

实例要求:编写代码实现 求输入一个整数的阶乘如下图所示:

实现步骤:

1.首先要理清阶乘的要求,求一个数n的阶乘,本质就是用n*(n-1)*(n-2)....*2*1,而1和0的阶乘为1的情况要用判断语句区分并单独列出

2.定义数据类型时,n为所求的整数,fac为阶乘结果,i为循环判断数。从2开始,阶乘就开始累乘,从此开始开始进行循环判断

3.主要代码如下

#include<stdio.h>
int main(){

	int n;//需输入的整数
	int i=2;
	int fac=1;
	printf("Please input your number: \n");
	scanf("%d",&n);
	//阶乘判断
	if(n==1||n==0){
		printf("The factorial is 1.\n");
		return 0;
	}
	//其他阶乘判断
	while(i<=n){
		fac = fac * i;
		i++;
	}
	printf("The factorial of %d is %d.\n",n,fac);

}

注意:

可以将输出的结果fac定义成单精度或者双精度,阶乘数过大时容易造成溢出现象。

B站视频链接:C语言实例 001 求阶乘_哔哩哔哩_bilibili

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值