flrto

마지막 문제 본문

C/Academy

마지막 문제

갈릭새우칩 2019. 7. 4. 21:51
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
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
#define _CRT_SECURE_NO_WARNINGS
#include <stdio.h>
#include <stdlib.h>
#include <string.h>
#include <time.h>
 
char EncTable[26][26= {};
 
struct Date
{
    int year = 0;
    int month = 0;
    int day = 0;
};
 
void StringFunc()
{
    const char * Str = "Hello World!";
 
    int index = strlen(Str);
 
    for (int i = index; i >= 0; i--)
    {
        if (Str[i] != NULL)
            printf("%c", Str[i]);
    }
 
}
 
void PtrFunc()
{
    int * ary;
 
    int InputNum = 0;
 
    scanf("%d"&InputNum);
    ary = (int*)malloc(InputNum * sizeof(int));
 
    for (int i = 0; i < InputNum; i++)
    {
        ary[i] = rand();
    }
 
    for (int i = 0; i < InputNum; i++)
    {
        printf("%d ", ary[i]);
    }
}
 
void StructFunc()
{
    Date day1;
    Date day2;
    Date RecentDay;
    printf("첫번째 날짜를 입력하세요! ");
    scanf("%d %d %d"&day1.year, &day1.month, &day1.day);
    printf("두번째 날짜를 입력하세요! ");
    scanf("%d %d %d"&day2.year, &day2.month, &day2.day);
 
    if (day1.year > day2.year)
    {
        RecentDay.year = day1.year;
        RecentDay.month = day1.month;
        RecentDay.day = day1.day;
    }
    else if (day1.year < day2.year)
    {
        RecentDay.year = day2.year;
        RecentDay.month = day2.month;
        RecentDay.day = day2.day;
    }
    else
    {
        if (day1.month > day2.month)
        {
            RecentDay.year = day1.year;
            RecentDay.month = day1.month;
            RecentDay.day = day1.day;
        }
        else if (day1.month < day2.month)
        {
            RecentDay.year = day2.year;
            RecentDay.month = day2.month;
            RecentDay.day = day2.day;
        }
        else
        {
            if (day1.day > day2.day)
            {
                RecentDay.year = day1.year;
                RecentDay.month = day1.month;
                RecentDay.day = day1.day;
            }
            else if (day1.day < day2.day)
            {
                RecentDay.year = day2.year;
                RecentDay.month = day2.month;
                RecentDay.day = day2.day;
            }
            else
            {
                //
            }
        }
    }
 
    printf("%d %d %d이 더 최신입니다.", RecentDay.year, RecentDay.month, RecentDay.day);
}
 
void Encryption(char str[])
{
    printf("%s\n", str);
    printf("암호화...\n");
 
    for (int i = 0; i < strlen(str); i++)
    {
        str[i] += 3;
    }
 
    printf("%s", str);
}
 
void Decryption(char str[])
{
    printf("\n복호화..\n");
    for (int i = 0; i < strlen(str); i++)
    {
        str[i] -= 3;
    }
 
    printf("%s\n", str);
}
 
 
int main(void)
{
    char Test[100];
    srand(time(NULL));
    //StringFunc();
    //PtrFunc();
    //StructFunc();
 
 
    printf("암호화할 문자를 입력하세요 ");
    scanf("%[^\n]"&Test);
    Encryption(Test);
    Decryption(Test);
 
    return 0;
}
cs


'C > Academy' 카테고리의 다른 글

문제2 풀이 (인덱스 출력 미완성)  (0) 2019.07.01
파일 입출력  (0) 2019.06.28
동적 메모리 할당  (0) 2019.06.28
텍스트 게임  (0) 2019.06.27
학생입력 프로그램  (0) 2019.06.26
Comments