为什么会有两个结果?

#include <iostream>
#include<iomanip>
using namespace std;
int main()
{
    double i,n;
    cin>>i;
    if(i<=100000)
    {
        n=i*0.1;
        cout<<setiosflags(ios::fixed)<<setprecision(2)<<n<<endl;
    }
    else if(i>100000&&i<=200000)
    {
        n=(i-100000)*0.075+(100000*0.1);
        cout<<setiosflags(ios::fixed)<<setprecision(2)<<n<<endl;
    }
    else if (i>200000&&i<=400000)
    {
        n=(i-200000)*0.05+(100000*0.1)+(100000*0.075);
        cout<<setiosflags(ios::fixed)<<setprecision(2)<<n<<endl;
    }
    else if(i>400000&&i<=600000)
    {
        n=(i-400000)*0.03+(100000*0.1)+(100000*0.075)+(200000*0.05);
        cout<<setiosflags(ios::fixed)<<setprecision(2)<<n<<endl;
    }
    else if(i>600000&&i<=1000000)
    {
        n=(i-600000)*0.015+(100000*0.1)+(100000*0.075)+(200000*0.05)+(200000*0.03);
        cout<<setiosflags(ios::fixed)<<setprecision(2)<<n<<endl;
    }
    else(i>1000000);
    {
        n=(i-1000000)*0.01+(100000*0.1)+(100000*0.075)+(200000*0.05)+(200000*0.03)+(400000*0.015);
        cout<<setiosflags(ios::fixed)<<setprecision(2)<<n<<endl;
    }
    return 0;
}

结果
1066
106.60
29510.66


Process exited with return value 0
Press any key to continue . .


你else加上条件和分号了。下面一个花括号单独作为一个代码段运行