有关函数内部定义if语句遇到的的问题。

问题遇到的现象和发生背景

img

用代码块功能插入代码,请勿粘贴截图
#include 
using namespace std;
int Max1(int i, int j)
{
    if (i < j)
    {
        return  j;
    }
    else if (i = j)
    {
        return i;
    }
    else
    {
        return i;        
    }
}

void main()
{
    int i =7 ;
    int j = 5;
    cout << Max1(i, j) << "\n" << (i < j);
}

运行结果及报错内容

5
0
D:\visualc\Project1\x64\Debug\Project1.exe (进程 17736)已退出,代码为 0。
要在调试停止时自动关闭控制台,请启用“工具”->“选项”->“调试”->“调试停止时自动关闭控制台”。
按任意键关闭此窗口. . .

我的解答思路和尝试过的方法

为什么这个函数输出的是5啊?但是我要是把(i=j)改成(i>j)就能正常运行了。

我想要达到的结果

有没有好兄弟能伴我解答一下。

第9行i==j