반응형

다음과 같은 간단한 기능을 하는 함수들을 작성하고, 사용자로부터 임의의 값을 입력받은 후에 작성한 함수들을 테스트하여 보자.

(a)주어진 정수가 짝수이면 1을 반환하고 홀수이면 0을 반환하는 함수 int even(int n)

{b)주어진 정수의 절대값을 구하는 함수 int absolute(int n)

(c)주어진 정수가 음수이면 -1을, 양수이면 1을 0이면 0을 반환하는 함수 int sign(int n)


나는 여기에 정수를 scan하는 함수와 출력하는 함수도 만들었다. 그리고 기본으로 무한루프를 생성한 후에(여러분에게 모든 가지수를 보여주기 위해서)

999999를 입력하면 프로그램이 종료되게 만들었다.

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
#include <stdio.h>
int scan_integer(void);
int even(int n);
int absolute(int n);
int sign(int n);
void printer(int a, int b, int c);
 
int main(void)
{
    int a, b, c, d;
    while(1)
    {
    a = scan_integer(); //정수를 받음
    if(a==999999)
        break;
    b = even(a); //홀수 짝수 판별
    c = absolute(a); //절댓값
    d = sign(a); // 부호 판별
    printer(b, c, d); // 출력 
    }
    return 0;
}
int scan_integer(void)
{
    int x;
    printf("정수를 입력하시오: (그만하려면 999999입력):");
    scanf("%d"&x);
    return x;
}
int even(int n)
{
    int x=0;
    if(n%2==0)
        x=1;
    else
        x=0;
    return x;
}
int absolute(int n)
{
    int x=0;
    if(n<0)
        x=(-n);
    else
        x=n;
    return x;
}
int sign(int n)
{
    int y;
    if(n<0)
        y=-1;
    else if(n==0)
        y=0;
    else
        y=1;
    return y;
}
void printer(int a, int b, int c)
{
    {if(a==1)
        printf("even()의 결과: 짝수\n");
    else
        printf("even()의 결과: 홀수\n");}
    printf("absoulute()의 결과: %d\n", b);
    {if(c==-1)
    printf("sign()의 결과: 음수\n");
    else if(c==0)
    printf("sign()의 결과: 0\n");
    else
        printf("sign()의 결과: 양수\n");}
}
cs




반응형

+ Recent posts