MFC多元线性回归对话框控件不显示数据
output () 函数为:
void CHGDLG::output ()
{
if ((aaa = fopen("aaa.txt","w"))==NULL)
{
exit(1);
}
tt=q;
fprintf(aaa, "\n%.3f %.3f %.3f %.3f \n", q, ss, r, u);
int i;
for (i=0; i<=m; i++)
fprintf(aaa, "\n%.3f \n",a[i]);
fclose(aaa);
tt=q;
printf("Success\n");
}
主函数为:void CHGDLG::OnOK()
{
UpdateData(TRUE);
if ((aaa = fopen("aaa.txt","w"))==NULL)
{
exit(1);
}
CHGDLG s(4, 15); //创建对象
s.OnButton1(); //由文件读入n组m个自变量值X,n个随机变量观测值y
s.analysis (); //执行多元线性回归分析
//输出回归系数a以及各统计量到文件并显示
s.output () ;
m_pch=q;
m_fxs=r;
UpdateData(FALSE);
}
运行之后得到的txt文件可以得到正确结果,既 fprintf(aaa, "\n%.3f %.3f %.3f %.3f \n", q, ss, r, u);
的结果为:42501.721 53.230 0.996 5889270.013。可是主函数的赋值m_pch对应的偏差平方和控件赋值结果不是42501.721求高手指点;