2012-06-25 56 views
-7

需要幫助確定如何編寫函數和返回參數。寫從溶液說明書下面的問題和答案,不知道怎麼寫功能雖然很困惑:(如何通過返回參數來編寫C++函數?

這是我已經試過:

#include <iostream> 
using namespace std; 
char Answer; 

void max(); 

void main() { 
    int max(int num1, int num2) { 
     if (num1 > num2) 
      return num1; 
     else 
      return num2; 
    } 

    print(); 
    system("pause"); 
} 
+0

oops no nb3對不起nb2和nb1 – user1467995

+0

C++不允許嵌套函數。如果你的代碼編譯,它是你正在使用的任何編譯器的擴展。另外,如果編譯出錯,應該將它們添加到問題中,最好是逐字回答。 –

回答

1

有這樣一個問題的幾個問題在。答案你有3個參數(int nb1,nb2,nb3),但問題說有兩個。也應該在每個標識符之前有一個int如果這是C++,這是C++嗎?還沒有指定如果參數是相等的(例如,max(6,6)),儘管大概這並不重要,下面是我要做的:

int max(int nb1, int nb2) 
{ 
if(b1 > b2)//this could be b1 >= b2, I think that's what your solution manual has 
    return b1; 
else 
    return b2; 
} 

編輯迴應評論:

給你到目前爲止做了什麼,這是我會改變,把事情的工作。下面已經出頭,你應該儘量避免

  1. INT主要(),並返回0應該被用來代替無效的主要()
  2. 系統(「暫停」)不應該被用來代替你可以等待用戶按Enter鍵

但好像你有足夠的沒有上述兩個問題圍繞讓你的頭:-)
你有你應該COUT < <使用功能打印「文本到這裏」 < < ENDL;當用C++編程時(C使用printf)。我在猜測你的輸入是硬編碼的,因此將num1和num2的值設置爲要比較的兩個數字。

#include <iostream> 
using namespace std; 

int max(int nb1, int nb2) 
{ 
     if(nb1 > nb2) 
       return nb1; 
     else 
       return nb2; 
} 

void main() 
{ 
     int num1 = 6;//put one number to be compared here 
     int num2 = 8;//put second number to be compared here 
     int result = max(num1, num2) 
     cout << result << endl; 
     system("pause"); 
} 
+0

所以如果我想輸入值,如要求它做cout <<「輸入你的第一個\ n」; numbercin << NUM1; cout <<「輸入第二個數字 – user1467995

+0

etc ...我在哪裏可以放置int result = max(num1,num2)? – user1467995

+0

用代碼編輯你的原始問題,在這裏很難跟蹤。點擊所見即所得編輯器的代碼標籤我不知道我是否理解你在說什麼......但我認爲你是在正確的軌道上,基本上'cout'用於顯示文本,'cin'是用於從鍵盤獲得用戶輸入。 – Celeritas

相關問題