C언어/자구알 3

[C] 프로젝트 완성, 후기

stack으로 구현하는 바질 키우기 게임이 완성되었다. 해당 프로젝트를 진행하며 알게 된 부분들을 정리해보자.우선 기본적으로 이번 프로젝트에서는 사용자로에게 두 키워드를 주어주면, 사용자가 그 중 하나를 선택(입력)한다. 그러면 그 키워드에 해당하는 문장이 출력된다. 이를 구현하는 것이 생각보다 힘들었다. 파이썬에서처럼 딕셔너리 자료형을 사용해서 구현할 수 있다면 편리했을텐데, C에는 따로 그런 자료형이 없어서 직접 만들어 줄 수밖에 없었다.#include #include //인풋을 저장해놓은 text에 그에 대응하는 value값을 저장void game(stacktype* s, char* text, char* key[], char* value[], char* neg_key[], char* neg_valu..

C언어/자구알 2024.01.28

[C] 프로젝트 설계

바로 본격적인 프로젝트 설계로 돌입해보자. 프로젝트명 : 바질이 키우기 게임※ 바질을 키우는 한 소녀를 본 적이 있는데, 아주 애지중지 바질을 키우는 모습이 인상적이었어서 이런 게임을 만들어보기로 했다.게임 설명말그대로 바질을 키우는 게임이다.바질이에게는 0부터 시작하는 체력이 있고, 체력은 최대치는 100이다. ※'바질이'는 바질의 이름임플레이어가 좋은 말을 해주면 바질이의 체력이 10 증가하며, 나쁜 말을 하면 20 감소한다. ※실제로 과학적으로 입증된건진 모름타자연습 게임 형태로 진행될 듯하다.제한 시간 내에 바질이의 체력을 100까지 올리면 게임 클리어다.구체적인 게임 구상바질이의 체력은 상시로 화면에 표시되어 있다. 제한시간 또한 화면에 표시되며, 게임 시작을 누른 직후부터 계속 감소한다.플레이..

C언어/자구알 2024.01.09

[C] stack을 사용한 초간단 프로젝트 (이론, 개요)

직전 학기 전공 과목으로 배운 자료구조 및 알고리즘 강의를 복습하고 이론적으로만 다뤘던 내용들을 C언어를 이용한 프로젝트를 통해 구현해보며 자료구조와 알고리즘을 체화시키자는 목적으로 시작하는 프로젝트..  그 주인공은 stack 으로 정했다.Stack이란??stack은 데이터의 삽입과 삭제가 한쪽 방향에서만 일어나는 구조다.후입선출에 따라서 처리되기에, 가장 최근에 들어온 데이터가 가장 먼저 나간다. 이정도가 인터넷에 stack을 찾아보면 나오는 설명들이다. Stack 구조는 단어 그대로 직관적으로 받아들일 수 있어서 편한 것 같다. Stack이라는 단어의 사전적 의미는 "무더기"로, 보통 책이 쌓여 있는 것을 보고 "a stack of books"라고 표현한다. 따라서 stack은 데이터를 아래에서 위..

C언어/자구알 2024.01.09