这是一项任务。我被要求编写一个比较无限数量输入值的程序。输入以0结尾。我必须显示计算的最小数量的数量。以下是我目前的代码:
#include <iostream>
#include <limits>
using namespace std;
int main()
{
int num,minct=0,temp=0;
int min = std::numeric_limits<int>::max();
cout<<"Enter numbers:";
do{
cin>>num;
if (num<=min &&num!=0){
min=num;
minct++;
}
}
while(num!=0);
cout<<"The smallest number is " << min<<" ."<<endl;
cout<<"The occurrence count of the smallest number is "<<minct<<" ."<<endl;
return 0;
}
在此代码中,当最小数不在第一个输入中时,计数的数字总是比实际值大1。我怎样才能让它准确?
答案 0 :(得分:0)
if(num<=min && num!=0){
if(num<min) {
min=num;
minct=1;
}
else if(num==min) {
minct++;
}
}