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

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

最大值輸出為什么顯示為任意值

#include<iostream>
#include<stdlib.h>
using?namespace?std;

int?getMaxOrMin(int*arr,?int?count,?bool?isMax)
{
	int?temp?=?arr[0];
	isMax?=?true;	
	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[4]={3,6,2,5};	
????bool?isMax?=?false;	
????cout?<<?"求最大值請輸入1,求最小值請輸入0:";?	
????cin?>>?isMax;	
????cout?<<?getMaxOrMin(arr1,4,isMax)?<<?endl;	
????system("pause");	
????return?0;
}


正在回答

3 回答

?for(int?i?=?0;i<=count;i++) 循環語句里面應該是i<count,而不是i<=count

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

為任意值是因為你的for循環中i的值為4的時候數組越界了,從而導致你獲得一個沒有規律的值。

另外,在這個代碼的第八行中,應去掉isMax?=?true;不然函數一直是取最大值

0 回復 有任何疑惑可以回復我~

第8行的isMax?=?true;去掉,這行會導致只能求出最大值而不能根據輸入改變輸出最大或最小值


0 回復 有任何疑惑可以回復我~

舉報

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

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

進入課程

最大值輸出為什么顯示為任意值

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

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

幫助反饋 APP下載

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

公眾號

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