c编程求解!

来源:百度知道 编辑:UC知道 时间:2024/05/22 01:50:29
Points in Figures: Rectangles
在x-y平面上,给你一些矩形和一些点,请你回答这些点落在哪些矩形内(如果有的话)。另外,在这个问题中,刚好落在边上的点不视为落在该矩形内。

Input

首先是矩形的资料,每个矩形一行,第1个字元代表图形的类别(r 代表矩形),接下来有4个数值分别代表该矩形左上角及右下角的座标。矩形的个数不会超过10个。

以一行仅含有一个*代表矩形资料结束。

接下来的每行为一个点的座标,也就是要测试的点。若点座标为9999.9 9999.9代表输入结束(此点不需输出)

Output

对每一个测试的点,若其落在某矩形内,则输出下列格式的讯息:

Point i is contained in figure j
如果某个点没有落在任何矩形内,则输出:

Point i is not contained in any figure
请注意:点和矩形的编号是按照他们出现在input的顺序。请参考Sample Output

Sample Input

r 8.5 17.0 25.5 -8.5
r 0.0 10.3 5.5 0.0
*
2.0 2.0
4.7 5.3
6.9 11.2
9999.9 9999.9
Sample Output

Point 1 is contained in figure 2
Point 2 is contained in figure 2
Point 2 is contained in figure 3

这里首先要利用VC++提供的框架生成器生成应用程序的主框架,然后利用设备环境中的CDC类调用其中的Rectangle()方法来绘制你输入的
r 8.5 17.0 25.5 -8.5
r 0.0 10.3 5.5 0.0
这2个矩形,然后调用CDC类中的SetPixel()方法得到
2.0 2.0
4.7 5.3
这2点,然后把每个点的横坐标与矩形的第1和第3个参数比较,纵坐标与第2和第4个参数比较,同时满足落在这2个值中间的点为矩形内部,然后记下坐标输出.
其实这个程序非常非常简单,我之所以不给你代码是想告诉你编程到底是怎么一回事,Visual c++这个编译环境在学校里,老师可能连什么是工作区和工程文件都没教,更谈不上建立应用程序筐架和MFC类的调用了,我这里就把这个简单程序和编译器使用柔和在一起,想告诉你,要想学编程,光靠学校老师讲那些基础,你永远学不会编程,你要参加IT培训机构的讲座,并自己动手和勤思考才能真正学会编程, 顺便提下,我已经不写C程序了,我现在使用java来写程序