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

vyc*_*dev -2 c++ fstream for-loop if-statement file

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

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

#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;
}
Run Code Online (Sandbox Code Playgroud)

问题是"如果"根本不起作用.

抱怨英语不好

Sor*_*tir 5

你有向后的任务:

if(minim > x)x=minim;
Run Code Online (Sandbox Code Playgroud)

应该:

if(minim > x) minim=x;
Run Code Online (Sandbox Code Playgroud)

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