[問題]陣列使用遞迴找最大與最小數
使用軟體:dev-c++ 4.9.9.2
我遇到的問題應該很基本,可是想很久不知道為什麼,也沒人可以問Q_Q
問題是編譯不過,我也有查到是哪裡的問題
===========程式碼============
#include<iostream>
using namespace std;
int a[]={52,31,27,64,100,10,2,34};
int maxmin(int *, int , int & , int &);
int max=0,min=0; //這行max跟min的宣告如果放在main裡面
//編譯才會過且執行正確
int main()
{
maxmin(a,7,max,min);
cout<<"max:"<<max<<endl<<"min:"<<min<<endl;
system("pause");
}
int maxmin(int *a, int i, int &max, int &min)
{
if(i==0)
{
max=a[0];
min=a[0];
}
else
{
maxmin(a,i-1,max,min);
if(max<a[i])
{max=a[i];}
if(min>a[i])
{min=a[i];}
}
}
=====================================================
編譯的錯誤是main裡面的max跟min未定義,可是我把它寫成global,
照理說應該沒這問題吧0.0
不知道為什麼一定要放在main裡面
=====================================================
我發現好像是max跟min這兩個名稱的問題?用其它字眼取代就可以了 0.0
--
※ 發信站: 批踢踢實業坊(ptt.cc)
◆ From: 61.229.122.183
→
12/18 14:51, , 1F
12/18 14:51, 1F
→
12/18 14:59, , 2F
12/18 14:59, 2F
※ 編輯: conan77420 來自: 61.229.122.183 (12/18 15:00)
推
12/18 15:00, , 3F
12/18 15:00, 3F
→
12/18 15:01, , 4F
12/18 15:01, 4F
→
12/18 15:02, , 5F
12/18 15:02, 5F
→
12/18 15:03, , 6F
12/18 15:03, 6F
C_and_CPP 近期熱門文章
PTT數位生活區 即時熱門文章