mfc一元二次方程虚根显示问题

请问图片1中else后面该怎么写,怎么写两个解m_g1,m_g2得到的结果是1+2i这样的形式,也就是图片2中的结果。不知道两个解的编辑框怎么显示数字加字符,谢谢各位大佬

img

img

就是一个类型转换就行了。你这里delta小于0,所以用虚数i来表示就是

b/2a+i*sqrt(-delta)
b/2a+i*sqrt(-delta)

下面是转换和字符串链接

double num = b/2a;
//保留16位小数
CString str1 = str.Format(_T("%.16lf"),num)
CString str2 = str.Format(_T("%.16lf"),sqrt(-delta))

//第一个根
CString x1 = str1 + CString("+") + CString("i")+ str2
//第二个根
CString x2 = str1 + CString("-") + CString("i")+ str2

/**********Edit Control 编辑控件********/
//a).  获取编辑框的内容:CWnd::GetWindowText();

//b).  为编辑区设置内容:CWnd::SetWindowText();

//c).  UpdateData(TRUE):将编辑区的内容更新到变量

//d).  UpdateData(FALSE):将变量的内容更新到编辑区