{"id":7546,"date":"2024-03-14T05:40:06","date_gmt":"2024-03-14T05:40:06","guid":{"rendered":"https:\/\/www.silicloud.com\/blog\/how-to-write-a-recursive-factorial-code-in-the-c-language\/"},"modified":"2025-08-02T17:39:53","modified_gmt":"2025-08-02T17:39:53","slug":"how-to-write-a-recursive-factorial-code-in-the-c-language","status":"publish","type":"post","link":"https:\/\/www.silicloud.com\/blog\/how-to-write-a-recursive-factorial-code-in-the-c-language\/","title":{"rendered":"C Recursive Factorial Function"},"content":{"rendered":"<p>Here is an example of C language code for calculating factorial using recursion.<\/p>\n<pre class=\"post-pre\"><code><span class=\"hljs-meta\">#<span class=\"hljs-keyword\">include<\/span> <span class=\"hljs-string\">&lt;stdio.h&gt;<\/span><\/span>\r\n\r\n<span class=\"hljs-type\">int<\/span> <span class=\"hljs-title function_\">factorial<\/span><span class=\"hljs-params\">(<span class=\"hljs-type\">int<\/span> n)<\/span> {\r\n    <span class=\"hljs-keyword\">if<\/span> (n == <span class=\"hljs-number\">0<\/span>) {\r\n        <span class=\"hljs-keyword\">return<\/span> <span class=\"hljs-number\">1<\/span>;\r\n    } <span class=\"hljs-keyword\">else<\/span> {\r\n        <span class=\"hljs-keyword\">return<\/span> n * factorial(n - <span class=\"hljs-number\">1<\/span>);\r\n    }\r\n}\r\n\r\n<span class=\"hljs-type\">int<\/span> <span class=\"hljs-title function_\">main<\/span><span class=\"hljs-params\">()<\/span> {\r\n    <span class=\"hljs-type\">int<\/span> num;\r\n    <span class=\"hljs-built_in\">printf<\/span>(<span class=\"hljs-string\">\"\u8bf7\u8f93\u5165\u4e00\u4e2a\u6574\u6570\uff1a\"<\/span>);\r\n    <span class=\"hljs-built_in\">scanf<\/span>(<span class=\"hljs-string\">\"%d\"<\/span>, &amp;num);\r\n    \r\n    <span class=\"hljs-keyword\">if<\/span> (num &lt; <span class=\"hljs-number\">0<\/span>) {\r\n        <span class=\"hljs-built_in\">printf<\/span>(<span class=\"hljs-string\">\"\u8f93\u5165\u7684\u6574\u6570\u5fc5\u987b\u5927\u4e8e\u7b49\u4e8e0\\n\"<\/span>);\r\n    } <span class=\"hljs-keyword\">else<\/span> {\r\n        <span class=\"hljs-type\">int<\/span> result = factorial(num);\r\n        <span class=\"hljs-built_in\">printf<\/span>(<span class=\"hljs-string\">\"%d\u7684\u9636\u4e58\u662f%d\\n\"<\/span>, num, result);\r\n    }\r\n    \r\n    <span class=\"hljs-keyword\">return<\/span> <span class=\"hljs-number\">0<\/span>;\r\n}\r\n<\/code><\/pre>\n<p>This code defines a factorial function to calculate the factorial of n. In the main function, an integer is first entered, and then the factorial function is called to calculate the factorial value and output the result. If the input integer is less than 0, an error message will be displayed.<\/p>\n","protected":false},"excerpt":{"rendered":"<p>Here is an example of C language code for calculating factorial using recursion. #include &lt;stdio.h&gt; int factorial(int n) { if (n == 0) { return 1; } else { return n * factorial(n &#8211; 1); } } int main() { int num; printf(&#8220;\u8bf7\u8f93\u5165\u4e00\u4e2a\u6574\u6570\uff1a&#8221;); scanf(&#8220;%d&#8221;, &amp;num); if (num &lt; 0) { printf(&#8220;\u8f93\u5165\u7684\u6574\u6570\u5fc5\u987b\u5927\u4e8e\u7b49\u4e8e0\\n&#8221;); } else { int [&hellip;]<\/p>\n","protected":false},"author":10,"featured_media":0,"comment_status":"closed","ping_status":"closed","sticky":false,"template":"","format":"standard","meta":{"_import_markdown_pro_load_document_selector":0,"_import_markdown_pro_submit_text_textarea":"","footnotes":""},"categories":[1],"tags":[704,381,7275,1902,9696],"class_list":["post-7546","post","type-post","status-publish","format-standard","hentry","category-uncategorized","tag-c-code-examples","tag-c-programming","tag-factorial-calculation","tag-programming-tutorials","tag-recursive-functions"],"yoast_head":"<!-- This site is optimized with the Yoast SEO Premium plugin v21.5 (Yoast SEO v21.5) - https:\/\/yoast.com\/wordpress\/plugins\/seo\/ -->\n<title>C Recursive Factorial Function - Blog - Silicon Cloud<\/title>\n<meta name=\"description\" content=\"Learn how to write a recursive factorial function in C with our step-by-step code example and explanation.\" \/>\n<meta name=\"robots\" content=\"index, follow, max-snippet:-1, max-image-preview:large, max-video-preview:-1\" \/>\n<link rel=\"canonical\" href=\"https:\/\/www.silicloud.com\/blog\/how-to-write-a-recursive-factorial-code-in-the-c-language\/\" \/>\n<meta property=\"og:locale\" content=\"en_US\" \/>\n<meta property=\"og:type\" content=\"article\" \/>\n<meta property=\"og:title\" content=\"C Recursive Factorial Function\" \/>\n<meta property=\"og:description\" content=\"Learn how to write a recursive factorial function in C with our step-by-step code example and explanation.\" \/>\n<meta property=\"og:url\" content=\"https:\/\/www.silicloud.com\/blog\/how-to-write-a-recursive-factorial-code-in-the-c-language\/\" \/>\n<meta property=\"og:site_name\" content=\"Blog - Silicon Cloud\" \/>\n<meta property=\"article:publisher\" content=\"https:\/\/www.facebook.com\/SiliCloudGlobal\/\" \/>\n<meta property=\"article:published_time\" content=\"2024-03-14T05:40:06+00:00\" \/>\n<meta property=\"article:modified_time\" content=\"2025-08-02T17:39:53+00:00\" \/>\n<meta name=\"author\" content=\"Jackson Davis\" \/>\n<meta name=\"twitter:card\" content=\"summary_large_image\" \/>\n<meta name=\"twitter:creator\" content=\"@SiliCloudGlobal\" \/>\n<meta name=\"twitter:site\" content=\"@SiliCloudGlobal\" \/>\n<meta name=\"twitter:label1\" content=\"Written by\" \/>\n\t<meta name=\"twitter:data1\" content=\"Jackson Davis\" \/>\n\t<meta name=\"twitter:label2\" content=\"Est. reading time\" \/>\n\t<meta name=\"twitter:data2\" content=\"1 minute\" \/>\n<script type=\"application\/ld+json\" class=\"yoast-schema-graph\">{\"@context\":\"https:\/\/schema.org\",\"@graph\":[{\"@type\":\"Article\",\"@id\":\"https:\/\/www.silicloud.com\/blog\/how-to-write-a-recursive-factorial-code-in-the-c-language\/#article\",\"isPartOf\":{\"@id\":\"https:\/\/www.silicloud.com\/blog\/how-to-write-a-recursive-factorial-code-in-the-c-language\/\"},\"author\":{\"name\":\"Jackson Davis\",\"@id\":\"https:\/\/www.silicloud.com\/blog\/#\/schema\/person\/55a10b8b0457c35884c25677889ad350\"},\"headline\":\"C Recursive Factorial Function\",\"datePublished\":\"2024-03-14T05:40:06+00:00\",\"dateModified\":\"2025-08-02T17:39:53+00:00\",\"mainEntityOfPage\":{\"@id\":\"https:\/\/www.silicloud.com\/blog\/how-to-write-a-recursive-factorial-code-in-the-c-language\/\"},\"wordCount\":67,\"publisher\":{\"@id\":\"https:\/\/www.silicloud.com\/blog\/#organization\"},\"keywords\":[\"C++ code examples\",\"C++ Programming\",\"Factorial calculation\",\"Programming tutorials\",\"recursive functions\"],\"inLanguage\":\"en-US\"},{\"@type\":\"WebPage\",\"@id\":\"https:\/\/www.silicloud.com\/blog\/how-to-write-a-recursive-factorial-code-in-the-c-language\/\",\"url\":\"https:\/\/www.silicloud.com\/blog\/how-to-write-a-recursive-factorial-code-in-the-c-language\/\",\"name\":\"C Recursive Factorial Function - Blog - Silicon Cloud\",\"isPartOf\":{\"@id\":\"https:\/\/www.silicloud.com\/blog\/#website\"},\"datePublished\":\"2024-03-14T05:40:06+00:00\",\"dateModified\":\"2025-08-02T17:39:53+00:00\",\"description\":\"Learn how to write a recursive factorial function in C with our step-by-step code example and explanation.\",\"breadcrumb\":{\"@id\":\"https:\/\/www.silicloud.com\/blog\/how-to-write-a-recursive-factorial-code-in-the-c-language\/#breadcrumb\"},\"inLanguage\":\"en-US\",\"potentialAction\":[{\"@type\":\"ReadAction\",\"target\":[\"https:\/\/www.silicloud.com\/blog\/how-to-write-a-recursive-factorial-code-in-the-c-language\/\"]}]},{\"@type\":\"BreadcrumbList\",\"@id\":\"https:\/\/www.silicloud.com\/blog\/how-to-write-a-recursive-factorial-code-in-the-c-language\/#breadcrumb\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"Home\",\"item\":\"https:\/\/www.silicloud.com\/blog\/\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"C Recursive Factorial Function\"}]},{\"@type\":\"WebSite\",\"@id\":\"https:\/\/www.silicloud.com\/blog\/#website\",\"url\":\"https:\/\/www.silicloud.com\/blog\/\",\"name\":\"Silicon Cloud Blog\",\"description\":\"\",\"publisher\":{\"@id\":\"https:\/\/www.silicloud.com\/blog\/#organization\"},\"inLanguage\":\"en-US\"},{\"@type\":\"Organization\",\"@id\":\"https:\/\/www.silicloud.com\/blog\/#organization\",\"name\":\"Silicon Cloud Blog\",\"url\":\"https:\/\/www.silicloud.com\/blog\/\",\"logo\":{\"@type\":\"ImageObject\",\"inLanguage\":\"en-US\",\"@id\":\"https:\/\/www.silicloud.com\/blog\/#\/schema\/logo\/image\/\",\"url\":\"https:\/\/www.silicloud.com\/blog\/wp-content\/uploads\/2023\/11\/EN-SILICON-Full.png\",\"contentUrl\":\"https:\/\/www.silicloud.com\/blog\/wp-content\/uploads\/2023\/11\/EN-SILICON-Full.png\",\"width\":1024,\"height\":1024,\"caption\":\"Silicon Cloud Blog\"},\"image\":{\"@id\":\"https:\/\/www.silicloud.com\/blog\/#\/schema\/logo\/image\/\"},\"sameAs\":[\"https:\/\/www.facebook.com\/SiliCloudGlobal\/\",\"https:\/\/twitter.com\/SiliCloudGlobal\"]},{\"@type\":\"Person\",\"@id\":\"https:\/\/www.silicloud.com\/blog\/#\/schema\/person\/55a10b8b0457c35884c25677889ad350\",\"name\":\"Jackson Davis\",\"image\":{\"@type\":\"ImageObject\",\"inLanguage\":\"en-US\",\"@id\":\"https:\/\/www.silicloud.com\/blog\/#\/schema\/person\/image\/\",\"url\":\"https:\/\/secure.gravatar.com\/avatar\/2fdb47d6df1226e92380d96973782572a97b0675d098bb914410dec348eb5d29?s=96&d=mm&r=g\",\"contentUrl\":\"https:\/\/secure.gravatar.com\/avatar\/2fdb47d6df1226e92380d96973782572a97b0675d098bb914410dec348eb5d29?s=96&d=mm&r=g\",\"caption\":\"Jackson Davis\"},\"url\":\"https:\/\/www.silicloud.com\/blog\/author\/jacksondavis\/\"}]}<\/script>\n<!-- \/ Yoast SEO Premium plugin. -->","yoast_head_json":{"title":"C Recursive Factorial Function - Blog - Silicon Cloud","description":"Learn how to write a recursive factorial function in C with our step-by-step code example and explanation.","robots":{"index":"index","follow":"follow","max-snippet":"max-snippet:-1","max-image-preview":"max-image-preview:large","max-video-preview":"max-video-preview:-1"},"canonical":"https:\/\/www.silicloud.com\/blog\/how-to-write-a-recursive-factorial-code-in-the-c-language\/","og_locale":"en_US","og_type":"article","og_title":"C Recursive Factorial Function","og_description":"Learn how to write a recursive factorial function in C with our step-by-step code example and explanation.","og_url":"https:\/\/www.silicloud.com\/blog\/how-to-write-a-recursive-factorial-code-in-the-c-language\/","og_site_name":"Blog - Silicon Cloud","article_publisher":"https:\/\/www.facebook.com\/SiliCloudGlobal\/","article_published_time":"2024-03-14T05:40:06+00:00","article_modified_time":"2025-08-02T17:39:53+00:00","author":"Jackson Davis","twitter_card":"summary_large_image","twitter_creator":"@SiliCloudGlobal","twitter_site":"@SiliCloudGlobal","twitter_misc":{"Written by":"Jackson Davis","Est. reading time":"1 minute"},"schema":{"@context":"https:\/\/schema.org","@graph":[{"@type":"Article","@id":"https:\/\/www.silicloud.com\/blog\/how-to-write-a-recursive-factorial-code-in-the-c-language\/#article","isPartOf":{"@id":"https:\/\/www.silicloud.com\/blog\/how-to-write-a-recursive-factorial-code-in-the-c-language\/"},"author":{"name":"Jackson Davis","@id":"https:\/\/www.silicloud.com\/blog\/#\/schema\/person\/55a10b8b0457c35884c25677889ad350"},"headline":"C Recursive Factorial Function","datePublished":"2024-03-14T05:40:06+00:00","dateModified":"2025-08-02T17:39:53+00:00","mainEntityOfPage":{"@id":"https:\/\/www.silicloud.com\/blog\/how-to-write-a-recursive-factorial-code-in-the-c-language\/"},"wordCount":67,"publisher":{"@id":"https:\/\/www.silicloud.com\/blog\/#organization"},"keywords":["C++ code examples","C++ Programming","Factorial calculation","Programming tutorials","recursive functions"],"inLanguage":"en-US"},{"@type":"WebPage","@id":"https:\/\/www.silicloud.com\/blog\/how-to-write-a-recursive-factorial-code-in-the-c-language\/","url":"https:\/\/www.silicloud.com\/blog\/how-to-write-a-recursive-factorial-code-in-the-c-language\/","name":"C Recursive Factorial Function - Blog - Silicon Cloud","isPartOf":{"@id":"https:\/\/www.silicloud.com\/blog\/#website"},"datePublished":"2024-03-14T05:40:06+00:00","dateModified":"2025-08-02T17:39:53+00:00","description":"Learn how to write a recursive factorial function in C with our step-by-step code example and explanation.","breadcrumb":{"@id":"https:\/\/www.silicloud.com\/blog\/how-to-write-a-recursive-factorial-code-in-the-c-language\/#breadcrumb"},"inLanguage":"en-US","potentialAction":[{"@type":"ReadAction","target":["https:\/\/www.silicloud.com\/blog\/how-to-write-a-recursive-factorial-code-in-the-c-language\/"]}]},{"@type":"BreadcrumbList","@id":"https:\/\/www.silicloud.com\/blog\/how-to-write-a-recursive-factorial-code-in-the-c-language\/#breadcrumb","itemListElement":[{"@type":"ListItem","position":1,"name":"Home","item":"https:\/\/www.silicloud.com\/blog\/"},{"@type":"ListItem","position":2,"name":"C Recursive Factorial Function"}]},{"@type":"WebSite","@id":"https:\/\/www.silicloud.com\/blog\/#website","url":"https:\/\/www.silicloud.com\/blog\/","name":"Silicon Cloud Blog","description":"","publisher":{"@id":"https:\/\/www.silicloud.com\/blog\/#organization"},"inLanguage":"en-US"},{"@type":"Organization","@id":"https:\/\/www.silicloud.com\/blog\/#organization","name":"Silicon Cloud Blog","url":"https:\/\/www.silicloud.com\/blog\/","logo":{"@type":"ImageObject","inLanguage":"en-US","@id":"https:\/\/www.silicloud.com\/blog\/#\/schema\/logo\/image\/","url":"https:\/\/www.silicloud.com\/blog\/wp-content\/uploads\/2023\/11\/EN-SILICON-Full.png","contentUrl":"https:\/\/www.silicloud.com\/blog\/wp-content\/uploads\/2023\/11\/EN-SILICON-Full.png","width":1024,"height":1024,"caption":"Silicon Cloud Blog"},"image":{"@id":"https:\/\/www.silicloud.com\/blog\/#\/schema\/logo\/image\/"},"sameAs":["https:\/\/www.facebook.com\/SiliCloudGlobal\/","https:\/\/twitter.com\/SiliCloudGlobal"]},{"@type":"Person","@id":"https:\/\/www.silicloud.com\/blog\/#\/schema\/person\/55a10b8b0457c35884c25677889ad350","name":"Jackson Davis","image":{"@type":"ImageObject","inLanguage":"en-US","@id":"https:\/\/www.silicloud.com\/blog\/#\/schema\/person\/image\/","url":"https:\/\/secure.gravatar.com\/avatar\/2fdb47d6df1226e92380d96973782572a97b0675d098bb914410dec348eb5d29?s=96&d=mm&r=g","contentUrl":"https:\/\/secure.gravatar.com\/avatar\/2fdb47d6df1226e92380d96973782572a97b0675d098bb914410dec348eb5d29?s=96&d=mm&r=g","caption":"Jackson Davis"},"url":"https:\/\/www.silicloud.com\/blog\/author\/jacksondavis\/"}]}},"_links":{"self":[{"href":"https:\/\/www.silicloud.com\/blog\/wp-json\/wp\/v2\/posts\/7546","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/www.silicloud.com\/blog\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/www.silicloud.com\/blog\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/www.silicloud.com\/blog\/wp-json\/wp\/v2\/users\/10"}],"replies":[{"embeddable":true,"href":"https:\/\/www.silicloud.com\/blog\/wp-json\/wp\/v2\/comments?post=7546"}],"version-history":[{"count":2,"href":"https:\/\/www.silicloud.com\/blog\/wp-json\/wp\/v2\/posts\/7546\/revisions"}],"predecessor-version":[{"id":152331,"href":"https:\/\/www.silicloud.com\/blog\/wp-json\/wp\/v2\/posts\/7546\/revisions\/152331"}],"wp:attachment":[{"href":"https:\/\/www.silicloud.com\/blog\/wp-json\/wp\/v2\/media?parent=7546"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/www.silicloud.com\/blog\/wp-json\/wp\/v2\/categories?post=7546"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/www.silicloud.com\/blog\/wp-json\/wp\/v2\/tags?post=7546"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}