맘여린나

scanf 함수 118p 문제 5-1 본문

컴퓨터 언어/C언어

scanf 함수 118p 문제 5-1

맘여린v 2019. 12. 27. 00:23
반응형

"scanf 함수"

 

 

여러 일을 경험해보면서 C언어가 필수임을 느끼고 "윤성우의 열혈 C 프로그래밍"이라는 책을 사고 공부를 시작하게 되었다. 예전에 배웠던 C언어지만 다시 시작하니 너무나 새롭다. 처음 시작한다는 의미로 차근차근 문제를 풀어보도록 하자.

 

 

scanf함수는 사용자에게 무언가를 입력받는 함수이다. 이와 반대로 출력하는 함수는 printf이며, 이 두 함수는 거의 항상 함께 쓰이는 듯 하다. 입력을 받았으니 출력을 해야하고, 출력을 해야하면 입력을 받아야 하기 때문이다.

 

글 제목에도 쓴 것을 한 번 풀어보도록 하자.

 

 

문제 5-1

프로그램 사용자로부터 두 점의 x,y좌표를 입력 받아서, 두 점이 이루는 직사각형의 넓이를 계산하여 출력하는 프로그램을 작성해보자. 단, 좌 상단의 x,y 좌표 값이 우 하단의 x,y 좌표 값보다 작다고 가정하고, 좌 상단의 좌표정보를 먼저 입력 받는 형태로 예제를 작성해보자.

 

#include
int main(void)
{
    int x1, x2, y1, y2;  -> 각각의 x와 y좌표
    int x3, y3; -> 넓이를 구하려고 선언한 변수
    int area; -> 넓이

    

    printf("x값, y값 입력 : ");
    scanf("%d %d", &x1, &y1);

    

    printf("한번 더 x값, y값 입력 : ");
    scanf("%d %d", &x2, &y2);

   

    x3 = x2-x1;
    y3 = y2-y1;
    area = x3*y3;

    

    printf("직사각형의 넓이는 %d \n", area);

    return 0;
}

 

문제를 처음 접했을 때, 단, 좌 상단의 x,y 좌표 값이 우 하단의 x,y 좌표 값보다 작다고 가정 이 말이 없었으면 힘들뻔 했다. 그래서 간단하게 코드를 작성할 수 있었다.

 

문제 5-1

 

결과를 확인해보자.

 

문제 5-1 결과

 

예상한 값이 나왔다.

 

한번에 디버깅이 안되었지만, 오류를 수정하면서 뭔가가 이해하는 느낌이 들었다. 많은 문제를 풀면서 오류를 수정하는 것에 익숙해지자.

반응형

'컴퓨터 언어 > C언어' 카테고리의 다른 글

while문에 대한 문제를 풀어보자  (0) 2020.01.02
Comments