当前位置:首页 » 编程语言 » c语言坐标求面积编程
扩展阅读
webinf下怎么引入js 2023-08-31 21:54:13
堡垒机怎么打开web 2023-08-31 21:54:11

c语言坐标求面积编程

发布时间: 2022-08-09 06:16:39

c语言,求三角形面积:从键盘输入三个顶点坐标(x1,y1)(x2,y2)(x3,y3)假设可能构成

#include

#include

float dis(float x1,float y1,float x2,float y2)
{
float dx,dy;
dx=x1-x2;dy=y1-y2;
return sqrt(dx*dx+dy*dy);
}
int main()
{
float x1,x2,x3,y1,y2,y3,p,s,a,b,c;

scanf("%f %f",&x1,&y1);
scanf("%f %f",&x2,&y2);
scanf("%f %f",&x3,&y3);

a=dis(x1,y1,x2,y2);
b=dis(x2,y2,x3,y3);
c=dis(x1,y1,x3,y3);
p=(a+b+c)/2;

s=sqrt(p*(p-a)*(p-b)*(p-c));
printf("%f ",s);
return 0;
}

运行结果

⑵ 怎么用c语言计算圆周长和面积

代码如下:

#include<stdio.h>

int main(){

int radius;

float area,perimeter;

radius=6;

perimeter=2*3.14*radius;

printf("圆的周长=%f英寸 ",perimeter);

area=3.14*radius*radius;

printf("圆的面积=%f平方英寸 ",area);

return(0);

}

2、c语言计算矩形的周长和面积

#include<stdio.h>

/*长方形的高和宽,单位为米*/

int width;

int height;

int area;

int perimeter;

int main(){

height=7;

width=5;

perimeter=2*(height+width);

printf("矩形的周长=%d米 ",perimeter);

area=height*width;

printf("矩形的面积=%d平方米 ",area);

return(0);

}

(2)c语言坐标求面积编程扩展阅读:

使用C语言计算圆周长和面积的优势:

1、简洁紧凑、灵活方便

C语言一共只有32个关键字,9种控制语句,程序书写形式自由,区分大小写。把高级语言的基本结构和语句与低级语言的实用性结合起来。C语言可以像汇编语言一样对位、字节和地址进行操作,而这三者是计算机最基本的工作单元。

2、运算符丰富

C语言的运算符包含的范围很广泛,共有34种运算符。C语言把括号、赋值、强制类型转换等都作为运算符处理。从而使C语言的运算类型极其丰富,表达式类型多样化。灵活使用各种运算符可以实现在其它高级语言中难以实现的运算。

⑶ 求平行四边形面积算法(已知4点坐标,讨论情况)用c语言编程(请付流程图)

public class Test{
public static void main(String[] args) throws Exception{
BufferedReader buf = new BufferedReader(new InputStreamReader(System.in));
System.out.println ("请输入平行四边形的长:");
String width = buf.readLine();
System.out.println ("请输入平行四边形的高:");
String height = buf.readLine();
int iw = Integer.parseInt(width);
int ih = Integer.parseInt(height);
int area = iw * ih;
System.out.println ("--");
System.out.println ("面积是: " + area);
}
}

⑷ C语言编程求多边形面积, (1)输入任意三点以上坐标,计算此多边形面

输入边数 n, 输入 多边形各顶点 x,y 坐标,逆时针顺序 (保证 叉乘积 为 正)。
各顶点 x,y 坐标 减去 a[0][0]。以 a[0][0] 为主 计算各三角形面积并累加。

#include <stdio.h>
#include <stdlib.h>

main( )
{
int i,j,n;
double s=0;
double a[15][2];
scanf("%d",&n);
for(i=0;i<n;i++)
for(j=0;j<2;j++)
scanf("%lf",&a[i][j]);
for(i=0;i<n;i++)
for(j=0;j<2;j++)
a[i][j]=a[i][j]-a[0][0];
for(i=1;i<n-1;i++)
{
s = s + 0.5*(a[i][0]*a[i+1][1]-a[i+1][0]*a[i][1]);
}
printf("%.2lf",s);
return 0;
}
追问
测试数据1 输出错误

错误输出:
1.00
期望输出:
5.00

测试数据2 输出错误

错误输出:
-10000.00
期望输出:
15000.00

测试数据3 输出错误

错误输出:
-1067.50
期望输出:
984.50

测试数据4 输出错误

测试数据5 输出错误

错误输出:
-1000.00
期望输出:
1100.00

都错了啊
追答
// 改正:a[i][j]=a[i][j]-a[0][j];
// 不是 -a[0][0], 是 a[0][j]

#include <stdio.h>
#include <stdlib.h>
main( ){int i,j,n;
double s=0;double a[15][2];
scanf("%d",&n);
for(i=0;i<n;i++)
for(j=0;j<2;j++)
scanf("%lf",&a[i][j]);
for(i=1;i<n;i++)
for(j=0;j<2;j++)
a[i][j]=a[i][j]-a[0][j];
for(i=1;i<n-1;i++){
s = s + 0.5* ( a[i][0] *a[i+1][1] - a[i+1] [0] * a[i][1] );
}
printf("%.2lf",s);
return 0;
}

⑸ c语言:根据四边形坐标计算面积

首先判断12点和34点横竖坐标的差值是否相等,相等则构成四边形。然后可以计算一半的面积,可以用求三角形面积的方法做。得到结果乘二即可。

⑹ C语言编程题 题目:任意输入4个点,求围成四边形的面积是多少

我测试过了,四点一线,凹四边形,四边形,有两个点共点,都可以,这里使用一条知道N边形N个顶点坐标求N边形的面积的公式,这些情况其实已经可以不考虑,呵呵,自动求

凹四边形情况:

#include"stdio.h"

#include"math.h"

voidmain()

{

doublex[4],y[4];

for(inti=0;i<4;i++)

{

scanf("%lf%lf",&x[i],&y[i]);

}

doublemianji=0.0;

for(intii=1;ii<4;ii++)

{

mianji+=(x[ii-1]*y[ii]-x[ii]*y[ii-1]);

}

mianji+=x[3]*y[0]-x[0]*y[3];

mianji=fabs(0.5*mianji);

printf("%lf ",mianji);

}

⑺ 用c语言怎么计算yi'坐标点与坐标轴围成面积

与坐标系有关,与你的围法有关。
假定直角坐标系,已知坐标点是 x,y,假定围法 是 [0,0] -> [x, 0] ->[x,y] -> [0, y]->[0,0]。
那么面积A 等于 x * y 的绝对值。基本语句:
double x,y,A
printf("input coords x y\n"); scanf("%lf %lf", &x, &y);
A = x * y;
if (A < 0) A = -A;
printf("Area = %lf\n",A);

⑻ 用c语言编写程序求四边形的面积

#include<stdio.h>
void
main()
{
printf
("请输入四点坐标:");
int
a[4][2];
for(int
i=0;i<4;i++)
{
scanf("%d
%d",a[i][0],a[i][1]);
//输入坐标值
}
if(a[0][0]=[1][0]=[2][0]=[3][0]
||a[0][1]=[1][1]=[2][1]=[3][1]
)
printf("这不是一个四边形");
//计算面积
//分成两个三角形的面积计算
,应该很简单计算三角形面积
}
自己做吧,我只能做到这了。
练习还是要自己尝试的

⑼ 已知任意一个多边形的各个顶点的坐标,怎么去求该多边形的面积(写下代码和思想--C语言)

用叉乘(或者叫向量积)设多边形的点按某顺序依次是(x1,y1),(x2,y2),...,(xn,yn)我们任选一个点和每条边相连,相邻的边做叉乘再除以2(构成三角形的有向面积),一般我们选原点(0,0)则面积S=(x1y2-x2y1)/2+(x2y3-x3y2)/2+...+(xny1-x1yn)/2这里S是有向面积 还要取绝对值程序很简单了 如果数组标号是0到n-1则double s=0;for (int i=0;i<n;i++) s+=((double)x[i]*y[(i+1)%n]-(double)x[(i+1)%n]*y[i])/2;s=fabs(s);