본문 바로가기

20141124_스택(stack)을 이용한 수식의 중위 -> 후위 표기법 변환 자료구조의 종류 중 하나인 스택(stack)을 이용하여 수식을 중위 표기법에서 후위 표기법으로 변환하는 프로그램입니다. #include #include typedef struct node{char data;struct node *pre;}NODE; NODE* createNode(char data){NODE *temp = (NODE*)malloc(sizeof(NODE));temp->data = data;temp->pre = NULL; return temp;} char pop(NODE **top){NODE *temp = *top;char t; if(*top == NULL)return 0; *top = (*top)->pre; t = temp->data; free(temp); return t;} void pus.. 더보기
20141123_C언어 오목게임 C언어로 구현한 오목 게임입니다. 아래 소스코드는 컴퓨터와의 대전이 아니라 2인 플레이로 진행됩니다. 약간의 인공지능을 넣은 컴퓨터와의 대전을 구현한 오목은 첨부파일에 있습니다. #include #include #define LEFT 75#define RIGHT 77#define UP 72#define DOWN 80#define SPACE 32#define MAP_X 39#define MAP_Y 24#define ESC 27#define U1 1#define U2 2typedef struct XY{int x;int y;}xy;gotoxy(int x, int y){COORD pos = {x, y};SetConsoleCursorPosition(GetStdHandle(STD_OUTPUT_HANDLE), pos.. 더보기
20141123_단일 연결리스트(singly linked list)_노드 추가 함수(addNode) C언어로 구현한 단일 연결리스트(singly linked list)의 한 부분입니다.리스트의 맨 뒤에 새로 생성한 노드를 추가하는 addNode 함수로전역 변수를 사용하지 않고 이중 포인터를 사용해 구현했습니다. #include #include typedef struct node{int data;struct node* next;}NODE; /*전달받은 데이터를 저장하는 하나의 노드를 생성하는 함수*/NODE* createNode(int data){// 동적할당으로 노드를 생성해준다.NODE *temp = (NODE*)malloc(sizeof(NODE)); // 해당 노드가 가르키는 다음 노드의 주소 초기화temp->next = NULL; // 전달 받은 데이터를 저장temp->data = data; re.. 더보기