原题链接:蓝桥杯基础练习VIP-矩形面积交
解题思路:
注意事项:
/*
功能描述:
对容器内元素进行排序
函数原型:
sort(iterator beg, iterator end, _Pred);
第三个参数不写时,默认按照升序排列,自己如果想按降序排序,写一个返回值为布尔类型的排序函数
bool cmp(int a,int b) {
return a>b;
}
或者第三个参数less<数据类型>() //从小到大排序 less较小的
greater<数据类型>() //从大到小排序 greater较大的
*/
参考代码:
#include<iostream> #include<algorithm> #include<cstdio> using namespace std; int main() { double x1,y1,x2,y2; // (x1,y1) (x2,y2) double x3,y3,x4,y4; // (x3,y3) (x4,y4) cin>>x1>>y1>>x2>>y2; cin>>x3>>y3>>x4>>y4; //相离 if((max(x1,x2)<min(x3,x4))||(min(y1,y2)>max(y3,y4))|| (max(x3,x4)<min(x1,x2))||(max(y1,y2)<min(y3,y4))) { cout<<"0.00"; // 输出数字一定要用双引号!!!! } //相交(其中有一种包含的情况,如果将x进行排序,那么不用讨论包含的情况) else { double x[4]={x1,x2,x3,x4}; double y[4]={y1,y2,y3,y4}; sort(x,x+4); sort(y,y+4); double num; num=(x[2]-x[1])*(y[2]-y[1]); printf("%.2f",num); } return 0; }
0.0分
9 人评分
C语言网提供由在职研发工程师或ACM蓝桥杯竞赛优秀选手录制的视频教程,并配有习题和答疑,点击了解:
一点编程也不会写的:零基础C语言学练课程
解决困扰你多年的C语言疑难杂症特性的C语言进阶课程
从零到写出一个爬虫的Python编程课程
只会语法写不出代码?手把手带你写100个编程真题的编程百练课程
信息学奥赛或C++选手的 必学C++课程
蓝桥杯ACM、信息学奥赛的必学课程:算法竞赛课入门课程
手把手讲解近五年真题的蓝桥杯辅导课程
发表评论 取消回复