Created
June 9, 2021 16:12
-
-
Save nickroh/baf2cdef64204eb91c8cc32eadc6e5c6 to your computer and use it in GitHub Desktop.
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
#define _CRT_SECURE_NO_WARNINGS // scanf 보안 경고로 인한 컴파일 에러 방지 | |
#include <stdio.h> | |
#include <stdlib.h> | |
#include <string.h> | |
#include <stdbool.h> | |
typedef struct dictionary{ | |
char dic[100]; // 결과값 배열 | |
int len = 0; // 문자열의 길이 | |
char s1[100]; // 크기가 100인 char형 배열을 선언 | |
bool (*checker)(char a,char dic[]); | |
void (*func)(char arr[],char dic[]); | |
void (*input)(char s1[]); | |
}diction; | |
void line_break(){ | |
printf("\n"); | |
} | |
bool checker(char a, char dic[]){ | |
for(int i=0;i<strlen(dic);i++){ | |
if(a == dic[i]){ | |
return false; | |
} | |
} | |
return true; | |
} | |
void func(char arr[],char dic[]){ | |
int diccnt=0; // 결과값 길이 | |
int len = 0; // 문자열의 길이 | |
len = strlen(arr); // 문자열의 길이를 len 변수에 저장 | |
for(int i=0; i<len; i++){ | |
if(checker(arr[i],dic)){ | |
dic[diccnt]= arr[i]; | |
diccnt++; | |
} | |
} | |
for(int i=0;i<diccnt;i++){ | |
printf("%c ,", dic[i]); // 문자열의 내용을 출력 | |
} | |
for(int i=0;i<diccnt;i++){ | |
dic[i]={0,}; | |
} | |
} | |
void input(char s1[]){ | |
char c; | |
printf("Enter String: "); | |
scanf("%[^\n]s", s1); | |
scanf("%c", &c); | |
} | |
int main(){ | |
while (true) | |
{ | |
diction d1; | |
d1.checker = checker; | |
d1.func = func; | |
d1.input = input; | |
d1.input(d1.s1); | |
d1.func(d1.s1, d1.dic); | |
line_break(); | |
} | |
return 0; | |
} |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment