if语句在for循环中不起作用

时间:2017-12-27 19:08:15

标签: c++ file for-loop if-statement fstream

好的我有这个问题:如果不想工作,我不知道为什么。

程序应该从文件中取一些数字,首先表示第二行的数字,然后说出该行的最小值和最大值。

#include <iostream>
#include <fstream>


using namespace std;

int main()
{
 ifstream f("file.in");
 ofstream g("file.out");
 int minim,x,maxim,i,n;

 f>>n;
 f>>maxim;
 minim=maxim;

 for(i=2;i<=n;i++){
    f>>x;
    if(minim > x)x=minim;
    if(maxim < x)x=maxim;
 }
    g << "min=" << minim;
    g << "\n" << "max=" << maxim;
    f.close();
    g.close();

return 0;
}

问题是“如果”根本不起作用。

抱怨英语不好

1 个答案:

答案 0 :(得分:5)

你的作业是向后的:

if(minim > x)x=minim;

应该是:

if(minim > x) minim=x;

你所拥有的是分配给x而不是保存新的最小值和最大值。