본문 바로가기
C언어

[C언어] 2차원 공간의 사각형은 2개의 점으로 이루어진다. point를 사용하여 구조체 rectangle을 정의하시오

by 이얏호이야호 2020. 5. 5.

공부하시는대에 도움이 됐으면 좋겠습니다.

답안 코드 확인해주세요!

 

더보기
#include <stdio.h>

#include <math.h>

struct point {

 int x, y;

}

;

struct rectangle {

 struct point a, b;

 // a는 오른쪽 상단, b는 왼쪽 하단을 나타낸다.

}

;

int area(struct rectangle r);

int perimeter(struct rectangle r);

int is_square(struct rectangle r);

int main(void) {

 struct point p1= {

 1, 1

 }

 ;

 struct point p2= {

 2, 2

 }

 ;

 struct rectangle r;

 r.a = p1;

 r.b = p2;

 printf("%d\n", area(r));

 printf("%d\n", perimeter(r));

 printf("%d\n", is_square(r));

 return 0;

}

int area(struct rectangle r) {

 return abs(r.a.x-r.b.x)*abs(r.a.y-r.b.y);

}

int perimeter(struct rectangle r) {

 return 2*(abs(r.a.x-r.b.x)+abs(r.a.y-r.b.y));

}

int is_square(struct rectangle r) {

 return abs(r.a.x-r.b.x)==abs(r.a.y-r.b.y);

}

 


더 많은 C 코드가 보고 싶다면?

https://chuinggun.tistory.com/category/C%EC%96%B8%EC%96%B4

댓글