
唉,感觉第四问,不好表示啊,第五问什么意思呢,真是输入十组数吗,第六个直接gg了,难受啊马飞

因为偷懒,我直接将代码写在前面了,没有写函数声明,程序是依次输入四边形四个角的坐标。
没有检错函数,必须是按照abcd连接构成的四边形。代码放这了,自己看吧,写了二十分钟。
#include <stdio.h>
#include <stdlib.h>
#include <math.h>
struct Point
{
double x;
double y;
}typedef point;
struct Quadrangle
{
point a;
point b;
point c;
point d;
}typedef quad;
double Length(point p1,point p2)//求长度的函数
{
return sqrt(pow(p1.x-p2.x,2)+pow(p1.y-p2.y,2));
}
double Perimeter(quad qu)//求周长的函数
{
return Length(qu.a,qu.b)+Length(qu.b,qu.c)+Length(qu.c,qu.d)+Length(qu.d,qu.a);
}
int main()
{
quad qua[10];
for(int s=0;s<10;++s)
{
scanf("%lf%lf",&qua[s].a.x,&qua[s].a.y);
scanf("%lf%lf",&qua[s].b.x,&qua[s].b.y);
scanf("%lf%lf",&qua[s].c.x,&qua[s].c.y);
scanf("%lf%lf",&qua[s].d.x,&qua[s].d.y);
}
double perim=0;
for(int t=0;t<10;++t)
{
perim+=Perimeter(qua[t]);
}
printf("%lf",perim);
return 0;
}