请教C++:题目要求是定义二维坐标点的结构体类型变量以及求两对顶点构成的矩形面积,我的程序如下:
#include<iostream.h>#include<math.h>structpoint{floatx,y;};structrect{pointp1,p2;doub...
#include<iostream.h>
#include<math.h>
struct point
{float x,y;
};
struct rect
{point p1,p2;
double area()
{double a;
a=sqrt((p2.x-p1.x)*(p2.x-p1.x)+(p2.y-p1.y)*(p2.y-p1.y));
return a;
}
};
void input()
{cout<<"输入两个点的坐标:\n";
point p1,p2;
cin>>p1.x>>p1.y>>p2.x>>p2.y;
cout<<"("<<p1.x<<","<<p1.y<<")"<<'\t'<<"("<<p2.x<<","<<p2.y<<")";
cout<<endl;
}
void print(rect r)
{double s;
s=r.area();
cout<<"矩形的面积为:"<<s;
}
void main ()
{input();
rect r;
print(r);
}
为什么不管输入什么,矩形面积输出的一直是0啊,求解释并在我的程序上帮我改改好吗,谢谢了!!!!! 展开
#include<math.h>
struct point
{float x,y;
};
struct rect
{point p1,p2;
double area()
{double a;
a=sqrt((p2.x-p1.x)*(p2.x-p1.x)+(p2.y-p1.y)*(p2.y-p1.y));
return a;
}
};
void input()
{cout<<"输入两个点的坐标:\n";
point p1,p2;
cin>>p1.x>>p1.y>>p2.x>>p2.y;
cout<<"("<<p1.x<<","<<p1.y<<")"<<'\t'<<"("<<p2.x<<","<<p2.y<<")";
cout<<endl;
}
void print(rect r)
{double s;
s=r.area();
cout<<"矩形的面积为:"<<s;
}
void main ()
{input();
rect r;
print(r);
}
为什么不管输入什么,矩形面积输出的一直是0啊,求解释并在我的程序上帮我改改好吗,谢谢了!!!!! 展开
2个回答
展开全部
两个点怎么求的面积啊? 哦 原来是对角 我感觉a=sqrt((p2.x-p1.x)*(p2.x-p1.x)+(p2.y-p1.y)*(p2.y-p1.y));
中间应该是*号,因为求面积嘛 然后就是struct rect
和rect r;
这句表示不理解 按照你的做法,rect是结构体变量名 那这个r又是什么意思?结构体又不是函数其他的没什么了 其实换别的方法很好写的 有点复杂了
中间应该是*号,因为求面积嘛 然后就是struct rect
和rect r;
这句表示不理解 按照你的做法,rect是结构体变量名 那这个r又是什么意思?结构体又不是函数其他的没什么了 其实换别的方法很好写的 有点复杂了
更多追问追答
追问
这是矩形的两对顶点
追答
嗯 两对顶点?我刚才试了下对角的那两个点就可以求出面积的
东莞大凡
2024-08-07 广告
2024-08-07 广告
在东莞市大凡光学科技有限公司,我们利用Halcon软件处理机器视觉项目时,会用到自定义标定板以满足特定需求。Halcon支持用户根据实际应用场景自定义标定板形状与标记点。这不仅可以灵活应对不同工作环境,还能提高标定精度。通过调整圆点数量、间...
点击进入详情页
本回答由东莞大凡提供
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询