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

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

我的代碼可以運行可是結果為什么不對

#include<iostream>
#include<stdlib.h>
using namespace std;
???
int getMaxorMin(int *arr,int count,bool ismax)
{
int temp;
if(ismax)
{
temp=arr[0];
for(int i=1;i<count;i++)
{
if(temp<arr[i])
{
temp=arr[i];
}
}
return temp;
}
if(ismax)
{
temp=arr[0];
for(int i=1;i<count;i++)
{
if(temp>arr[i])
{
temp=arr[i];
}
}
return temp;
}
}
int main(void)
{
int ismax;
cin>>ismax;
int arr1[4]={1,5,7,2};
cout<<getMaxorMin(arr1,4,ismax)<<endl;
system("pause");
return 0;
}

正在回答

3 回答

為什么你有8個{卻只有7個 };注意下return的位置和一開始定義的在一個大括號里面

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

①你在getMaxorMin里用了兩個if(isMax)。if(isMax)的意思是如果isMax結果為true則怎么怎么樣。現在如果傳入isMax=true就會有兩個入口,如果isMax=false就會沒有入口。
建議:
if(isMax)
{
...
}
else
{
...
}
②你在getMaxorMin里需要的是布爾型的isMax,在main函數里傳入的是整型的isMax,不匹配。(不知道這個會不會有問題,還沒有試過)
③你在main函數中聲明的isMax沒有賦初值,可能導致編譯時隨機賦值。
在下才疏學淺,說的有什么不對的還請見諒。

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

#include<iostream>
#include<stdlib.h>
using namespace std;
???
int getMaxorMin(int *arr,int count,bool ismax)
{
int temp;
if(ismax)
{
temp=arr[0];
for(int i=1;i<count;i++)
{
if(temp<arr[i])
{
temp=arr[i];
}

else
{
?if(temp>arr[i])
?{
??temp=arr[i];
?}
}


if(temp>arr[i])
{
temp=arr[i];
}
}
return temp;
}
}
int main(void)
{
int arr1[4]={1,5,7,2};
bool ismax =false;
cin>>ismax;
?

cout<<getMaxorMin(arr1,4,ismax)<<endl;
system("pause");
return 0;
}

改完后的代碼,請參考

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

學霸985

你的這個輸入什么就輸出什么,,
2019-08-03 回復 有任何疑惑可以回復我~

舉報

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

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

進入課程

我的代碼可以運行可是結果為什么不對

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

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

幫助反饋 APP下載

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

公眾號

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