問題:單元測試生成最大值的函數
設計思路:使用最大值函數生成最大值,然後定義函數將最大值帶入檢測是否為最大值,具體為依次與數組元素比較應該大於等於所有元素。從而進行檢驗。
程序源代碼:
1 #include<iostream> 2 #include<vector> 3 using namespace std; 4 5 int Largest(vector <int> &list) 6 { 7 int max=list[0]; 8 if(list.size()<5) 9 { 10 cout<<"輸入位數少於5或者數組為空"; 11 } 12 else 13 { 14 for(int i=0;i<5;i++) 15 { 16 if(list[i]>max) 17 { 18 max=list[i]; 19 } 20 } 21 } 22 return max; 23 } 24 void Ceshi(vector<int> &list) 25 { 26 cout<<Largest(list)<<endl; 27 for(int j=0;j<5;j++) 28 { 29 if(list[j]>Largest(list)) 30 cout<<"錯誤!"; 31 } 32 } 33 void main() 34 { 35 vector<int> list(5); 36 Ceshi(list); 37 list[0]=1;list[1]=2;list[2]=3;list[3]=4;list[4]=5; 38 Ceshi(list); 39 list[0]=-1;list[1]=-2;list[2]=-3;list[3]=-4;list[4]=-5; 40 Ceshi(list); 41 list[0]=2;list[1]=2;list[2]=2;list[3]=2;list[4]=2; 42 Ceshi(list); 43 list[0]=1;list[1]=2;list[2]=4;list[3]=3;list[4]=5; 44 Ceshi(list); 45 list[0]=5;list[1]=4;list[2]=3;list[3]=2;list[4]=1; 46 Ceshi(list); 47 }
結果截圖:
結果失誤分析:c++依然不能解決空數組問題。本來想通過vector方式解決結果不能定義空數組。