2.有一个文档视图结构的多文档应用程序框架,在视图类的成员函数体内编写程序,要求:在屏幕的中央显示一个圆,在圆的中心显示一个注记——“武汉大学”(蓝色),鼠标点击圆的内部能够弹出一个对话框,显示圆的面积和周长。(所写的程序段需注明属于那个函数内,或者如有必要,可以自己添加成员函数)(10分)
①
void CMyGis2View::OnDraw(CDC* pDC)
{
}
②
void CMyGis2View::OnLButtonDown(UINT nFlags, CPoint point)
{
CView::OnLButtonDown(nFlags, point);
}
3.有一段数字和字符,请按照ASCⅡ表的顺序设计一个排序算法进行排序,并将排序后的结果输出到文件名为result.dat的纯文本文件中。(需要写出一个完整的函数体,不能使用任何库函数):(10分)
WUHAN R129 WHU 1893 Ress Gis Wh RS
①
void CMyGis2View::OnDraw(CDC* pDC)
{
}
②
void CMyGis2View::OnLButtonDown(UINT nFlags, CPoint point)
{
CView::OnLButtonDown(nFlags, point);
}
3.有一段数字和字符,请按照ASCⅡ表的顺序设计一个排序算法进行排序,并将排序后的结果输出到文件名为result.dat的纯文本文件中。(需要写出一个完整的函数体,不能使用任何库函数):(10分)
WUHAN R129 WHU 1893 Ress Gis Wh RS
解决方案 »
- 高手帮看看这个线程关闭的问题
- 如何实现跟SVN类似的动态更改explorer中图标
- 如何放大显示bitmap?
- HRESULT 是什么数据类型?有什么用途?
- 关于:term does not evaluate to a function
- 请教高手:怎样调用MATLAB的函数进行矩阵运算?很急,请急救!!!!
- 寻找一些关于异常处理和MFC中关于编译控制方面的学习资料!
- 有没有能够显示MIME信件的组件呀。
- opencv摄像头截图内存泄露
- 一个socket问题
- 客户端和服务器建立socket连接后,在客户应用程序退出前,没有执行断开连接,次数多了服务器端会有问题吗?
- 基于 对话框 还是 文档视图结构 开发数据库项目
{
CRect rect;
CPoint center;
CString str = "武汉大学";
GetClientRect(&rect); //得到客户区矩形
center = rect.CenterPoint(); //得到客户区中心
rect.SetRect( //根据中心和半径设置圆所在矩形
center.x-100,
center.y-100,
center.x+100,
center.y+100
);
pDC->Ellipse(rect); //根据矩形绘制圆
pDC->SetTextColor(RGB(0,0,255));//设置字体颜色
pDC->TextOut(center.x-30,center.y-5,str);//显示字符串"武汉大学"
}void CMyGis2View::OnLButtonDown(UINT nFlags, CPoint point)
{
CRect rect;
CString str;
CRgn rgn;
CPoint center;
GetClientRect(&rect); //找到客户区矩形
center = rect.CenterPoint(); //找到客户区中心点
rect.SetRect( //跟据中心点和圆半径设置圆所在矩形
center.x-100,
center.y-100,
center.x+100,
center.y+100
);
rgn.CreateEllipticRgnIndirect(&rect); //根据举行设置圆形区域对象
if (rgn.PtInRegion(point)) { //判断当前点击的位置是否在圆形区域内
str.Format("圆半径:%.2lf 圆周长: %.2lf",3.14*100*100,2*3.14*100);
AfxMessageBox(str); //计算面积,半径并显示
}
CView::OnLButtonDown(nFlags, point);
}
{
ofstream out("result.dat");
char temp;
int max;
int i;
int j; for (i=0; i<length; i++) {
max = i;
for (j=i; j<length; j++) {
if (str[j] > str[i]) {
max = j;
}
}
if (max != i) {
temp = str[i];
str[i] = str[j];
str[j] = temp;
}
out<<str[i];
}
}
{
CRect rect;
CPoint center;
CString str = "武汉大学";
GetClientRect(&rect); //得到客户区矩形
center = rect.CenterPoint(); //得到客户区中心
rect.SetRect( //根据中心和半径设置圆所在矩形
center.x-100,
center.y-100,
center.x+100,
center.y+100
);
pDC->Ellipse(rect); //根据矩形绘制圆
pDC->SetTextColor(RGB(0,0,255));//设置字体颜色
pDC->TextOut(center.x-30,center.y-5,str);//显示字符串"武汉大学"
}void CMyGis2View::OnLButtonDown(UINT nFlags, CPoint point)
{
CRect rect;
CString str;
CRgn rgn;
CPoint center;
GetClientRect(&rect); //找到客户区矩形
center = rect.CenterPoint(); //找到客户区中心点
rect.SetRect( //跟据中心点和圆半径设置圆所在矩形
center.x-100,
center.y-100,
center.x+100,
center.y+100
);
rgn.CreateEllipticRgnIndirect(&rect); //根据举行设置圆形区域对象
if (rgn.PtInRegion(point)) { //判断当前点击的位置是否在圆形区域内
str.Format("圆半径:%.2lf 圆周长: %.2lf",3.14*100*100,2*3.14*100);
AfxMessageBox(str); //计算面积,半径并显示
}
CView::OnLButtonDown(nFlags, point);
}