C++坐标排序问题求解
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了C++坐标排序问题求解相关的知识,希望对你有一定的参考价值。
编写一个程序,处理坐标点排序,每个坐标点有横坐标(x)、纵坐标(y),输入四个坐标信息,然后按照横坐标从小到大排序,输出排序后的坐标结果,要求使用结构体来实现
#include <iostream>
using namespace std;
struct Point
int x,y;
;
void Sort(Point p[])
Point temp;
temp=p[1];
p[1]=p[2];
p[2]=temp;
p[1].x;
int main()
Point p1,p2,p3,p4;
Point p[4];
for(int i=0;i<4;i++)
cin>>p[i].x>>p[i].y;
//Sort(p);
for (i=0;i<3;i++)
for (int j=3;j>i;j--)
if (p[j].x<p[j-1].x)
p1=p[j];
p[j]=p[j-1];
p[j-1]=p1;
for(int a=0;a<4;i++)
cout<<p[a].x<<p[a].y;
return 0;
using namespace std;
struct Point
int x,y;
;
void Sort(Point p[])
Point temp;
temp=p[1];
p[1]=p[2];
p[2]=temp;
p[1].x;
int main()
Point p1; //p2,p3,p4都没用
Point p[4];
for(int i=0;i<4;i++)
cin>>p[i].x>>p[i].y;
//Sort(p);
for (int i=0;i<3;i++) //int i
for (int j=3;j>i;j--)
if (p[j].x<p[j-1].x)
p1=p[j];
p[j]=p[j-1];
p[j-1]=p1;
for(int a=0;a<4;a++) //不是i++
cout<<p[a].x<<" "<<p[a].y<<endl; //输出格式给你改了下
return 0;
满意请采纳!
语法上的错误好像解决了,那么逻辑上的呢?输出结果不行。。。到底哪错了呢?求高手解答!
追答?你的测试样例是什么?我这输出没问题
追问学校电脑破截不了图(0^0),先给你满意答案吧~回去弄不行私信找你哈
追答说好的满意答案呢?
参考技术B for(a=0;a<4;a++)//这里是a++cout<<p[a].x<<p[a].y;追问
语法上的错误好像解决了,那么逻辑上的呢?输出结果不行。。。一串数字是怎么回事,求高手解答!
追答#include <iostream>using namespace std;
struct Point
int x,y;
;
int main()
Point p1,p2,p3,p4;
Point p[4];
int i,j,a;
for(i=0;i<4;i++)
cin>>p[i].x>>p[i].y;
for(i=0;i<3;i++)
for(j=3;j>i;j--)
if(p[j].x<p[j-1].x)
p1=p[j];
p[j]=p[j-1];
p[j-1]=p1;
for(a=0;a<4;a++)
cout<<p[a].x<<' '<<p[a].y<<'\\t';
cout<<endl;
return 0;
以上是关于C++坐标排序问题求解的主要内容,如果未能解决你的问题,请参考以下文章