C語言實(shí)現(xiàn)階乘的示例詳解
前言
在現(xiàn)實(shí)中,我們做數(shù)學(xué)題總會(huì)遇到階乘問題,這在計(jì)算機(jī)中也不例外。 那我們應(yīng)該怎么實(shí)現(xiàn)呢?
我記得很多老師在電腦上書寫階乘都是用!這個(gè)符號(hào)表示。 比如5的階乘,寫為5!。 這在C語言中是行不通的,下面我講解C語言中階乘的實(shí)現(xiàn)。
1.階乘實(shí)現(xiàn)
1.1理論步驟
我們可以利用while、do……while、以及for等循環(huán)實(shí)現(xiàn),實(shí)現(xiàn)功能如下:
我們先設(shè)置好3個(gè)變量,i、n(想要的階層數(shù))、jieceng(階層結(jié)果)
利用循環(huán)得到相應(yīng)階乘
1.2實(shí)踐結(jié)果
這里用3種循環(huán)都展示一下
while實(shí)現(xiàn)
#include <stdio.h> int main() { int i = 1; int n = 0; int jieceng = 1; scanf("%d", &n); //輸入想得到的階層數(shù) while (i <= n) { jieceng *= i; i++; } printf("%d的階層是%d\n", n, jieceng); return 0; }
do……while實(shí)現(xiàn)
#include <stdio.h> int main() { int i = 1; int n = 0; int jieceng = 1; scanf("%d", &n); do { jieceng *= i; i++; } while (i <= n); printf("%d的階層是%d\n", n, jieceng); return 0; }
for實(shí)現(xiàn)
#include <stdio.h> int main() { int i = 1; int n = 0; int jieceng = 1; scanf("%d", &n); for (i = 1; i <= n; i++) { jieceng *= i; } printf("%d的階層是%d\n", n, jieceng); return 0; }
2.連續(xù)乘層相加實(shí)現(xiàn)
2.1理論步驟
首先明確要連續(xù)相加,必然需要2層循環(huán)嵌套
2.2實(shí)踐結(jié)果
我這里用2層for循環(huán)實(shí)現(xiàn)
#include<stdio.h> int main() //算1~n階層相加 { int sum = 0; int jiecen = 0; int i = 0; int j = 0; int n = 0; scanf("%d", &n); //設(shè)置想要到達(dá)的n值 for (j = 1; j <= n; j++) { for (i = 1, jiecen =1; i <= j; i++) //重置jieceng,使每次從1開始 { jiecen = jiecen * i; //里循環(huán)得每一相應(yīng)階層數(shù) } sum += jiecen; //階層之和 } printf("%d\n", sum); return 0; }
一層for循環(huán)實(shí)現(xiàn)(簡(jiǎn)潔版)
#include <stdio.h> int main() //算1~10階層相加(j簡(jiǎn)短版)好** { int sum = 0; int jiecen = 1; int i = 0; int n = 0; scanf("%d", &n); for (i = 1; i <= n; i++) { jiecen = jiecen * i; sum += jiecen; } printf("%d\n", sum); return 0; }
以上就是C語言實(shí)現(xiàn)階乘的示例詳解的詳細(xì)內(nèi)容,更多關(guān)于C語言 階乘的資料請(qǐng)關(guān)注腳本之家其它相關(guān)文章!
相關(guān)文章
基于OpenCV?差分法實(shí)現(xiàn)綠葉識(shí)別
物體識(shí)別是圖像處理學(xué)在現(xiàn)實(shí)生活中較多的應(yīng)用之一,本文提供了一種相對(duì)簡(jiǎn)單的思路來實(shí)現(xiàn)綠葉識(shí)別,適合初學(xué)圖像處理的新人研究參考。感興趣的同學(xué)可以關(guān)注一下2021-11-11C語言實(shí)現(xiàn)經(jīng)典24點(diǎn)紙牌益智游戲
這篇文章主要為大家詳細(xì)介紹了C語言實(shí)現(xiàn)經(jīng)典24點(diǎn)紙牌益智游戲,文中示例代碼介紹的非常詳細(xì),具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下2019-10-10詳解Dev C++使用教程(使用Dev C++編寫C語言程序)
這篇文章主要介紹了詳解Dev C++使用教程(使用Dev C++編寫C語言程序),文中通過示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧2021-03-03C++基礎(chǔ)入門教程(三):數(shù)組、字符串、結(jié)構(gòu)體、共用體
這篇文章主要介紹了C++基礎(chǔ)入門教程(三):數(shù)組、字符串、結(jié)構(gòu)體、共用體,需要的朋友可以參考下2014-11-11