1.源程序代码
//maowenwen2016.3.21
//最大值的单元测试
//仍有的错误:输入的数,若不是整数,错!
include
using namespace std;
define N 10000
int Largest(int list[],int length)
{
int i,max;
max = list[0];
while(cin.fail())
{
cout<<"您输入的不是整数,请重新输入"<<endl;
cin>>length;
}
while(length<0||length>10000)
{
cout<<"输入有误,请重新输入!"<<endl;
cin>>length;
while(cin.fail())
{
cout<<"您输入的不是整数,请重新输入"<<endl;
cin>>length;
}
}
while(length==0)
{
cout<<"请输入一个值吧,不然没有最大值啊!"<<endl;
cin>>length;
while(cin.fail())
{
cout<<"您输入的不是整数,请重新输入"<<endl;
cin>>length;
}
while(length<0||length>2147483647)
{
cout<<"输入有误,请重新输入!"<<endl;
cin>>length;
while(cin.fail())
{
cout<<"您输入的不是整数,请重新输入"<<endl;
cin>>length;
}
}
}
cout << "请依次输所要输入的值:" <<endl;
for(i=0;i<length;i++)
{
cin>>list[i];
/*while(cin.fail())
{
cout<<"您输入的第"<<i<<"个数不是整数,请重新输入"<<endl;
cin>>list[i];
}
cin.clear();//百度的,修复输入流
cin.ignore();//取走刚才的流中的字符 */
}
/*for(i=0;i<length;i++)
{
}*/
for(i=0;i<length;i++)
{
if(list[i]>max)
{
max = list[i];
}
}
return max;
}
void main()
{
cout << "请输入您想输入数据的个数" << endl;
int a;
cin>> a;//个数
int b[N];
int max;
max = Largest(b,a);
cout << "最大值为:" << max << endl;
}
2.截图分析
3.仍存在的错误
当输入的数为非整数时,错!