您的位置:首页 > 编程语言 > C语言/C++

第七周项目一图形用户界面应用程序开发初体验(VC++6.0)

2015-04-26 18:10 260 查看
问题:求一元二次方程式ax2+bx+c=0的根。a,b,c的值在运行时由键盘输入。

#include<iostream>
#include<cmath>
usingnamespace std;
int main( )
{
float  a,b,c,x1,x2;
cin>>a>>b>>c;
if ((b*b-4*a*c)>=0)
{
if((b*b-4*a*c)>0)
{
x1=(-b+sqrt(b*b-4*a*c))/(2*a);
x2=(-b-sqrt(b*b-4*a*c))/(2*a);
cout<<"两个不相等的实根分别是:x1="<<x1<<",""x2="<<x2<<endl;
}
else
{
x1=-b/(2*a);
cout<<"两个相等的实根,x1=x2="<<x1<<endl;
}
}
else
cout<<"方程无实根"<<endl;
return 0;
}


打开VC++6.0



File->New->MFC APPWizard(exe) ,projict name (任取)->OK



点击“OK”之后



点击“Dialog based”,点击next(一直next,直到没有next为止)



点击finished



点击"OK"



然后出现下图



然后将controls中的

(Aa)

(abl)

(button)拖到灰色区域(一个一个的拖动)

拖动

后输入a后出现



添加5个静态变量(点击5次

键)输入5次后,如图



然后添加5个

(编辑框控件)在静态文本框后面,添加后如图



添加

(交互式控件)。修改控件名(右键选择properties)修改之后,如图



确认输入a、b、c的编辑框的ID分别为IDC_EDIT1、IDC_EDIT2和IDC_EDIT3,用于输出x1,x2的两个编辑框的ID分别为IDC_EDIT4、和IDC_EDIT5

点击右键查看属性properties

测试对话框:layout->tset或Ctrl+T,出现的界面如图



开始求方程的解:

点击View->Class Wizard(建立类向导)



点击MemberVariables,设置各个控件对应的变量



双击IDC_EDIT1,为其添加对应的变量,变量名为m_a,变量类型为double,如图



同样的方法,设置其他变量



为按钮设置将来点击后要执行的程序:

点击Message Maps



为按钮添加BN_CLICKED消息映射:

点击Object IDS:->IDC_BUTTON1,在点击Messages->BN_CLICKED



再单击右侧的“Add Function…”按钮



在新出现的弹出式窗口中点OK,可以看到加入了Member Functions



双击新增加的成员函数,现在需要输入程序了



输入程序:

double delta;
UpdateData();//用于将控件显示的数据传给成员变量
delta=m_b*m_b-4*m_a*m_c;
if(delta>=0)
{
m_x1=(-m_b+sqrt(delta))/(2*m_a);
m_x2=(-m_b-sqrt(delta))/(2*m_a);
}
else
MessageBox("方程无实根!");
UpdateData(FALSE);//用于将计算好的数据传给控件在窗口中显示


要在程序的最上边加上include <cmath>



关闭界面,按F7或者在左上角的一排中选择Bulid的第二个Bulid xxx.exe或点击中间上方的

就建立了这样一个程序。



然后按F5或者选择Go

可以执行程序

程序运行界面如图



计算结果如图





学习心得:

刚开始打开VC++6.0时,感觉好难啊!全是英文,一个也看不懂。然后看老师和同学的博文,感觉好复杂啊,这一个程序,从头弄了好几次,每次总是弄到一半的时候就按错了,导致我又重新弄,不过这好几次没有白弄,学会使用了,不过到最后运行的时候,不知道为什么不能继续操作了,是因为出现警告的原因吗?

昨天弄了好长时间没弄成功,今天又重新弄了一遍,感觉简单了好多,也把昨天的问题解决了,最后运行不了是因为我把代码复制粘贴错了导致运行不了的,现在终于把这个程序完整的弄了一遍。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: 
相关文章推荐