게시판 즐겨찾기
편집
드래그 앤 드롭으로
즐겨찾기 아이콘 위치 수정이 가능합니다.
C언어 구조체 하나만 질문할게요 ㅠ
게시물ID : programmer_11091짧은주소 복사하기
작성자 : 원페어
추천 : 0
조회수 : 371회
댓글수 : 4개
등록시간 : 2015/06/09 19:48:31
#include <stdio.h>
#include <math.h>

struct Point
{
double x;
double y;
}p1,p2,p3,p4,p5;

struct Segment
{
struct Point p1;
struct Point p2;
struct Point p3;
struct Point p4;
struct Point p5;
}seg;

void Segment_length(struct Segment *seg,double *length);

int main()
{
double length;

printf("총 5개의 좌표를 입력 받은 뒤 \입력 받은 모든 점을 순서대로 연결했을 때\n얻게되는 선의 길이를 구조체를 사용해 나타내어라\n\n\n\n");
printf("점 1의 좌표를 입력하시오 : ");
scanf_s("%lf %lf",&p1.x,&p1.y);
printf("점 2의 좌표를 입력하시오 : ");
scanf_s("%lf %lf",&p2.x,&p2.y);
printf("점 3의 좌표를 입력하시오 : ");
scanf_s("%lf %lf",&p3.x,&p3.y);
printf("점 4의 좌표를 입력하시오 : ");
scanf_s("%lf %lf",&p4.x,&p4.y);
printf("점 5의 좌표를 입력하시오 : ");
scanf_s("%lf %lf",&p5.x,&p5.y);
printf("\n\n");

Segment_length(&seg,&length);
printf("길이는 %lf이다.\n\n",length);

return 0;
}

void Segment_length(struct Segment *seg,double *length)
{
*length = sqrt(pow(seg->p5.x - seg->p4.x,2) + pow(seg->p5.y-seg->p4.y,2)) \
    +  sqrt(pow(seg->p4.x - seg->p3.x,2) + pow(seg->p4.y-seg->p3.y,2)) \
+  sqrt(pow(seg->p3.x - seg->p2.x,2) + pow(seg->p3.y-seg->p2.y,2)) \
+  sqrt(pow(seg->p2.x - seg->p1.x,2) + pow(seg->p2.y-seg->p1.y,2));
}




-----------------------------------------------------------------------


'총 5개의 좌표를 입력 받은 뒤 입력 받은 모든 점을 순서대로 연결했을 때 얻게되는 선의 길이를 구조체를 사용해 나타내어라'
라는 문제인데, 아무리 프로그램을 실행시켜봐도, 출력 값이 0.000 이 나오네요 ㅠ
혹시 도움 받을 수 있을 까요?

꼬릿말 보기
전체 추천리스트 보기
새로운 댓글이 없습니다.
새로운 댓글 확인하기
글쓰기
◀뒤로가기
PC버전
맨위로▲
공지 운영 자료창고 청소년보호