我是C ++的新手,我很难理解下面的程序。它看起来很简单,所以让我感到我对到目前为止在c ++中学到的所有东西都错了。
int number = 0;
int min = 0;
cout << "enter (-1) to stop" << endl;
while( number != -1)
{
cout << "Enter an integer:";
cin >> number ;
if (number < min)
min = number;
}
cout << "your minimum number is: " << min << endl;
我最困惑的是if语句。 “ min”仅被初始化为等于零,因此整个if语句对我来说没有意义。我认为,在程序中没有真正定义“最小”的东西。 非常感谢任何贡献。谢谢!
程序运行正常。而且,确实可以找到用户输入的一组数字中的最小值。我只是不明白那是怎么回事
答案 0 :(得分:1)
在循环的每次迭代中,将使用number
读取新的cin
。因为number
是一个有符号整数,所以它可能小于min
,在这种情况下,if将通过。奇怪的是min
从0开始,但是if语句不是多余的。
答案 1 :(得分:1)
使用输入的第一个数字初始化min
。
cout << "enter (-1) to stop" << endl;
cout << "Enter an integer:";
cin >> number ;
min = number;
while( number != -1)
{
cout << "Enter an integer:";
cin >> number ;
if (number < min)
min = number;
}