问题:单元测试生成最大值的函数
设计思路:使用最大值函数生成最大值,然后定义函数将最大值带入检测是否为最大值,具体为依次与数组元素比较应该大于等于所有元素。从而进行检验。
程序源代码:
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方式解决结果不能定义空数组。