目錄
帶有參數和傳回值的函數
文法
演算法
範例
輸出
結論
首頁 後端開發 C++ C++程式建立一個帶有參數和回傳值的函數

C++程式建立一個帶有參數和回傳值的函數

Aug 30, 2023 pm 11:33 PM
傳回值 參數 c函數

C++程式建立一個帶有參數和回傳值的函數

任何使用函數的程式語言都具有更簡單、更模組化並且在偵錯時更容易更改的程式碼。函數是模組化程式碼中非常有用的元件。函數接受參數和輸出結果的能力。函數不一定需要接受輸入並且始終產生結果。在許多情況下,函數只接受一些輸入並且不傳回任何內容。不總是回應,也不會容忍爭議。本文將解釋如何建立使用函數的 C 程序,函數接受多個參數並在處理後產生結果。

帶有參數和傳回值的函數

要定義一個帶有幾個參數的函數並向呼叫者函數傳回一個值(呼叫者函數是呼叫我們的函數來執行某些操作的呼叫者函數),返回類型必須是特定類型,而不是void ,且參數清單中必須有給定的參數清單

文法

<return type> function_name ( <type1> argument1, <type2> argument2, … ) {
   // function body
}
登入後複製

在下面的範例中,我們將數字作為參數傳遞,然後計算給定數字的階乘,並傳回結果。讓我們看看演算法和 C 中的實作。

演算法

  • 定義一個函數 Factorial(),它將以 n 為參數
  • 事實:= 1
  • 當 n > 1 時;做
    • 事實 = 事實 * n
    • n = n - 1
  • 結束
  • 返回事實
  • 結束函數體
  • 呼叫 Factorial() 並傳遞 n 來找出 n 的階乘

範例

#include <iostream>
using namespace std;

long factorial( int n ) {
   long fact = 1;
   while ( n > 1 ) {
      fact = fact * n;
      n = n - 1;
   }
   return fact;
}

int main()
{
   cout << "Factorial of 6 is: ";
   long res = factorial( 6 );
   cout << res << endl;
   cout << "Factorial of 8 is: ";
   res = factorial( 8 );
   cout << res << endl;
   cout << "Factorial of 12 is: ";
   res = factorial( 12 );
   cout << res << endl;
}
登入後複製

輸出

Factorial of 6 is: 720
Factorial of 8 is: 40320
Factorial of 12 is: 479001600
登入後複製

另一個使用函數檢查數字是否回文的範例。我們傳遞一個數字作為參數,當它是回文時,函數將傳回 true,當它不是回文時,函數將傳回 false。

演算法

  • 定義一個函數solve(),這將需要n
  • 總和:= 0
  • temp = n;
  • 當 n > 0 時,執行
    • rem := n mod 10
    • 總和 := (總和 * 10) rem
    • n := (n / 2) 的下限
  • 結束
  • 如果 sum 與 temp 相同,則
    • 返回真
  • 否則
    • 回傳錯誤
  • 如果結束

範例

#include <iostream>
#include <sstream>

using namespace std;
string solve( int n ) {
   int sum = 0;
   int temp = n;
   int rem;
   while( n > 0) {
      rem = n % 10;
      sum = (sum * 10) + rem;
      n = n / 10;
   }

   if( temp == sum ) {
      return "true";
   }
   else {
      return "false";
   }
}

int main()
{
   cout << "Is 153 a palindrome? " << solve( 153 ) << endl;
   cout << "Is 15451 a palindrome? " << solve( 15451 ) << endl;
   cout << "Is 979 a palindrome? " << solve( 979 ) << endl;
}
登入後複製

輸出

Is 153 a palindrome? false
Is 15451 a palindrome? true
Is 979 a palindrome? true
登入後複製

結論

在編寫程式碼時使用函數可以使程式碼模組化,並且在偵錯或使用別人的程式碼時有幾個優點。有不同的函數模式,有時從呼叫者函數取得參數並將結果傳回給呼叫者函數。有時它不接受任何輸入但會傳回一個值。在本文中,我們透過幾個範例了解如何編寫帶有參數以及向呼叫者函數傳回值的函數。使用函數非常簡單且易於實現。在編寫程式碼時使用函數總是好的,這可以減少許多應用程式中不必要的程式碼重複。

以上是C++程式建立一個帶有參數和回傳值的函數的詳細內容。更多資訊請關注PHP中文網其他相關文章!

本網站聲明
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn

熱AI工具

Undresser.AI Undress

Undresser.AI Undress

人工智慧驅動的應用程序,用於創建逼真的裸體照片

AI Clothes Remover

AI Clothes Remover

用於從照片中去除衣服的線上人工智慧工具。

Undress AI Tool

Undress AI Tool

免費脫衣圖片

Clothoff.io

Clothoff.io

AI脫衣器

Video Face Swap

Video Face Swap

使用我們完全免費的人工智慧換臉工具,輕鬆在任何影片中換臉!

熱工具

記事本++7.3.1

記事本++7.3.1

好用且免費的程式碼編輯器

SublimeText3漢化版

SublimeText3漢化版

中文版,非常好用

禪工作室 13.0.1

禪工作室 13.0.1

強大的PHP整合開發環境

Dreamweaver CS6

Dreamweaver CS6

視覺化網頁開發工具

SublimeText3 Mac版

SublimeText3 Mac版

神級程式碼編輯軟體(SublimeText3)

熱門話題

Java教學
1664
14
CakePHP 教程
1423
52
Laravel 教程
1317
25
PHP教程
1268
29
C# 教程
1248
24
PHP 5.4版本新功能:如何使用callable類型提示參數接受可呼叫的函數或方法 PHP 5.4版本新功能:如何使用callable類型提示參數接受可呼叫的函數或方法 Jul 29, 2023 pm 09:19 PM

PHP5.4版本新功能:如何使用callable類型提示參數接受可呼叫的函數或方法引言:PHP5.4版本引入了一個非常便利的新功能-可以使用callable類型提示參數來接受可呼叫的函數或方法。這個新功能使得函數和方法可以直接指定對應的可呼叫參數,而無需進行額外的檢查和轉換。在本文中,我們將介紹callable類型提示的使用方法,並提供一些程式碼範例,

產品參數是什麼意思 產品參數是什麼意思 Jul 05, 2023 am 11:13 AM

產品參數是指產品屬性的意思。例如服裝參數有品牌、材質、型號、大小、風格、布料、適應人群和顏色等;食品參數有品牌、重量、材質、衛生許可證號碼、適應人群和顏色等;家電參數有品牌、尺寸、顏色、產地、適應電壓、訊號、介面和功率等。

scanf返回值被忽略怎麼解決 scanf返回值被忽略怎麼解決 Nov 14, 2023 am 10:01 AM

scanf回傳值被忽略的解決方法有檢查scanf的回傳值、清除輸入緩衝區和使用fgets替代scanf等。詳細介紹:1、檢查scanf的返回值,應該始終檢查scanf函數的返回值,scanf函數的返回值是成功讀取的參數的數量,如果返回值與期望的不一致,就意味著輸入有誤;2 、清除輸入緩衝區,在使用scanf函數時,如果輸入的資料與期望的格式不匹配,將導致輸入緩衝區中的資料等等。

C++ 函式參數型別安全檢查 C++ 函式參數型別安全檢查 Apr 19, 2024 pm 12:00 PM

C++參數類型安全檢查透過編譯時檢查、執行時間檢查和靜態斷言確保函數只接受預期類型的值,防止意外行為和程式崩潰:編譯時類型檢查:編譯器檢查類型相容性。運行時類型檢查:使用dynamic_cast檢查類型相容性,不符則拋出異常。靜態斷言:在編譯時對型別條件進行斷言。

PHP Warning: in_array() expects parameter的解決方法 PHP Warning: in_array() expects parameter的解決方法 Jun 22, 2023 pm 11:52 PM

在開發過程中,我們可能會遇到這樣一個錯誤提示:PHPWarning:in_array()expectsparameter。這個錯誤提示會在使用in_array()函數時出現,有可能是因為函數的參數傳遞不正確所導致的。以下我們來看看這個錯誤提示的解決方法。首先,需要明確in_array()函數的作用:檢查一個值是否在陣列中存在。此函數的原型為:in_a

C++程式以給定值為參數,找出雙曲正弦反函數的值 C++程式以給定值為參數,找出雙曲正弦反函數的值 Sep 17, 2023 am 10:49 AM

雙曲函數是使用雙曲線而不是圓定義的,與普通三角函數相當。它從提供的弧度角傳回雙曲正弦函數中的比率參數。但要做相反的事,或者換句話說。如果我們想要根據雙曲正弦值計算角度,我們需要像雙曲反正弦運算一樣的反雙曲三角運算。本課程將示範如何使用C++中的雙曲反正弦(asinh)函數,並使用雙曲正弦值(以弧度為單位)計算角度。雙曲反正弦運算遵循下列公式-$$\mathrm{sinh^{-1}x\:=\:In(x\:+\:\sqrt{x^2\:+\:1})},其中\:In\:是\:自然對數\:(log_e\:k)

i9-12900H參數評測大全 i9-12900H參數評測大全 Feb 23, 2024 am 09:25 AM

i9-12900H是14核心的處理器,使用的架構和工藝都是全新的,線程也很高,整體的工作都是很優秀的,一些參數都有提升特別的全面,是可以給用戶們帶來極佳體驗的。 i9-12900H參數評測大全評測:1、i9-12900H是14核心的處理器,採用了q1架構以及24576kb的製程工藝,提升到了20個執行緒。 2.最大的CPU頻率是1.80!5.00ghz,整體主要取決於工作的負載。 3.相比較價位來說還是特別合適的,性價比很不錯,對於一些需要正常使用的伙伴來說非常的合適。 i9-12900H參數評測大全性能跑分

開源模型首勝GPT-4!競技場最新戰報引熱議,Karpathy:這是我唯二信任的榜單 開源模型首勝GPT-4!競技場最新戰報引熱議,Karpathy:這是我唯二信任的榜單 Apr 10, 2024 pm 03:16 PM

能打得過GPT-4的開源模型出現了!大模型競技場最新戰報:1040億參數開源模型CommandR+攀升至第6位,與GPT-4-0314打成平手,超過了GPT-4-0613。圖片這也是第一個在大模型競技場上擊敗GPT-4的開放權重模型。大模型競技場,可是大神Karpathy口中唯二信任的測試基準之一。圖片CommandR+來自AI獨角獸Cohere。這家大模型新創公司的共同創辦人兼CEO,正是Transformer最年輕作者AidanGomez(簡稱割麥子)。圖片這份戰報一出,又掀起了一波大模型社

See all articles