亚洲在线久爱草,狠狠天天香蕉网,天天搞日日干久草,伊人亚洲日本欧美

為了賬號安全,請及時綁定郵箱和手機立即綁定

傳不等于1的值為false(最小值),只有傳1才為true(最大值)

/************************************************************/

/*知識點:bool類型、命名空間、輸入輸出 */

/*題目要求:使用一個函數找出一個整型數組中的最大值和最小值 */

/************************************************************/


#include<stdlib.h>

#include<iostream>

using namespace std;


int getMaxOrMin(int *arr, int count, bool isMax)

{

int temp = arr[0];

for (int i = 0; i < count; i++)

{

if (isMax)

{

if (temp < arr[i])

temp = arr[i];

}

else

{

if (temp > arr[i])

temp = arr[i];

}

}

return temp;

}


int main(void)

{

int arr1[5] = { 2,1,4,8,3 };

bool val = false;

cin >> val; //bool類型中,認為非0為true,0為false ???未實現

cout<< getMaxOrMin(arr1, 5, val) << endl;

system("pause");

return 0;

}

//很想問一下,網上查了相關資料,”C++將非零值解釋為true,將0解釋為false“? 在這里怎么無法識別呢??我代碼有問題還是???

正在回答

1 回答

int main(void)

{

int arr1[5] = { 2,1,4,8,3 };

bool val = false;

cin >> val; //bool類型中,認為非0為true,0為false ???未實現

在我自己的vs試了一下,輸入0和1可以分別得到1和8,但是非0和1的數應該都是輸出1

但如果去掉bool val = false;中 =false 好像就可以輸入非0數得到8

可能是因為初始化就不行了,但是不是這樣不確定


1 回復 有任何疑惑可以回復我~
#1

qq_慕少5236623 提問者

是的,是這樣的,翻了一下相關書籍,寫道:任何數字值和指針值都可以被隱式轉換為bool值。 舉例:bool strat = -100; //start 隱式轉換為 true bool stop = 0; //stop 隱式轉換為 false
2019-09-21 回復 有任何疑惑可以回復我~

舉報

0/150
提交
取消
C++遠征之起航篇
  • 參與學習       290974    人
  • 解答問題       817    個

C++亮點盡在其中,本課程是在C語言基礎上的一個延伸,得以升華

進入課程

傳不等于1的值為false(最小值),只有傳1才為true(最大值)

我要回答 關注問題
微信客服

購課補貼
聯系客服咨詢優惠詳情

幫助反饋 APP下載

慕課網APP
您的移動學習伙伴

公眾號

掃描二維碼
關注慕課網微信公眾號