옥수수와 식빵 그리고 코딩

10장 실습예제 본문

C/2021겨울계절 - 프로그래밍 이해

10장 실습예제

옥식 2022. 1. 4. 13:22

p.10 lab

난수 알아맞히기

#define _CRT_SECURE_NO_WARNINGS
#include <stdio.h>

#include <stdlib.h>
#include <time.h>

#define MAX 100

int guess;
int testNum(int);

int main(void)
{
    int input;

    srand((long)time(NULL));
    guess = rand() % MAX + 1;

    printf("1에서 %d사이에서 한 정수 결정됨\n", MAX);
    printf("뭔지 맞춰보셈: ");

    while (scanf("%d", &input))
    {
        switch (testNum(input))
        {
        case 0:
            puts("정답");
            break;
        case -1:
            printf("입력한 수보다 작음 다시 ㄱㄱ: ");
            break;
        case 1:
            printf("입력한 수보다 큼 다시 ㄱㄱ: ");
            break;
        }
    }

    return 0;
}
int testNum(int input)
{
    extern guess;

    int result = 0;
    if (input > guess)
        result = -1;
    else if (input < guess)
        result = 1;
    else
        result = 0;

    return result;


}

정답 맞춰도 프로그램이 종료가 안됨. 계속 입력할 수 있음.

p.

#include <stdio.h>

int main(void)
{
    int i = 100;
    char c = 'A';

    int* pi = &i;
    char* pc = &c;
    printf("간접참조 출력: %d %c\n", pi, pc);

    *pi = 200;
    *pc = 'B';
    printf("직접참조 출력: %d %c\n", i, c);

    int data = 1000;
    pi = &data;
    printf("직접참조 출력: %d %d\n", data, *pi);

    return 0;
}

 

p.

#include <stdio.h>

int main(void)
{
    int x = 500, y = 700, dummy;
    printf("%d %d\n", x, y);

    int *px = &x, *py = &y, *pd = &dummy;

    *pd = *px;
    *px = *py;
    *py = *pd;

    printf("%d %d\n", x, y);

    return 0;
}

 

'C > 2021겨울계절 - 프로그래밍 이해' 카테고리의 다른 글

9장 실습예제  (0) 2021.12.31
9장 실전예제  (0) 2021.12.30
8장 실전예제  (0) 2021.12.30
if else를 이용한 연봉 계산  (0) 2021.12.29
7장 실습예제  (0) 2021.12.29
Comments