C언어 24

[C언어, C++] scanf() 문자 입력 문제 - 입력 버퍼

1. 개요 이 카테고리는 내가 겪은 문제들, 그리고 이 문제들을 해결하는 과정을 정리하고자 만든 카테고리이다. 사실 엄청난 문제들도 아니다 ㅎㅎ 사소한 문제가 대부분이지만, 때론 사소한 문제들이 극심함 스트레스를 만들기도 하기 때문에 많은 사람들의 스트레스 해소에 조금이라도 도움이 되었으면 좋겠다. 2. 문제 만약 내가 두개의 문자를 입력받고 그 프로그램을 출력하는 코드를 작성했다고 가정해보자 아마 다음과 같은 코드가 만들어 질 것이다. *#include int main(void) { char value1, value2; scanf("%c", &value1); scanf("%c", &value2); printf("첫 번째 문자%c\n", value1); printf("두 번째 문자%c", value2);..

자료구조 10주차 과제 - 이중 원형 연결리스트

1. 과제 안내문 이번 과제는 이중 연결 리스트에 대한 과제입니다. 이중 연결 리스트에서 앞/뒤로 이동하는 것과 삽입/삭제에 대한 연산입니다. 이중 연결 리스트는 원하는 대로 앞/뒤로 이동이 가능하기 때문에 꼭 첫 노드만 가리킬 필요가 없습니다. 어느 한 노드만 알고 있으면 원하는 대로 이동 가능하기 때문입니다. 이번 과제에는 이중 연결 리스트에 새로운 노드를 삽입하고, 기존의 노드를 삭제하고, 앞뒤로 이동하면서 data를 출력하는 내용입니다. 이번 과제에는 앞/뒤로 이동이 가능한 이중 연결 리스트이고, 또한 마지막 노드가 첫 노드를 가르키는 원형 연결 리스트이고, 헤드 노드는 없는 연결 리스트입니다. 아래의 연산자들을 완성하기 바랍니다. 다음은 명령에 대한 설명이다. L ;; pList를 왼쪽으로 움직..

C++을 활용한 게임 만들기

1. 개요 행렬 Class를 사용해서 게임을 만들어 보았습니다 헤헿. 왜냐면 과제였기 때문이죠ㅎ. 사실 과제는 행렬을 사용한 프로그램 만들기였는데, 저는 그냥 게임을 만들었습니다. (사실 너무 허접해서 게임 같지도 않습니다......) 이차원 배열로 평면을 표현할 수 있다고 생각하고 전체적인 게임판은을 만들고 그 위에서 연산을 통해 캐릭터를 이동시키는...... 방법을 생각해보았습니다 ㅎㅎ 물론 완성도는 매우 낮으므로 욕만 하지 말아주세요 ㅎㅎ 굳이 행렬을 왜 Class로 만드느냐! 그냥 C++문법 연습도 하고 나름 자료구조 처럼 이용해보고 싶었습니다...... 2. 코드 구성 - 행렬 Class 구현 다음은 제가 작성한 행렬 Class입니다. 그냥 이 게임에서 필요한 기능만을 만들어서 제가 작성한 Cl..

자료구조 9주차 과제 - 원형 리스트

1. 과제 안내문 이번 과제는 목걸이 문제를 프로그래밍 한다. 목걸이 문제는 목걸이에서 스킵/삭제를 반복하여 최종적으로 남는 구슬을 찾는 문제이다. 목걸이는 1부터 n까지 번호가 부여된 구슬들로 구성되고, 1번부터 스킵과 삭제를 반복하여 마지막까지 남은 구슬의 번호를 찾는다. 다시 말해 1번 구슬은 건너뛰고, 2번 구슬은 삭제되고, 3번 구슬은 건너뛰고, 4번 구슬은 삭제되는 방식으로 구슬이 하나만 남을 때까지 반복된다. 이렇게 반복하여 마지막까지 남은 구슬의 번호를 찾는다. 목걸이 문제를 해결하는 방식은 2 가지 해결책이 있다. 첫째로 1부터 n까지 데이터를 가지는 노드들을 원형 연결 리스트로 만든 목걸이에서 1부터 시작하여 스킵과 삭제를 반복하는 방식으로 시물레이션에 의하여 답을 찾는다. 둘째로 일반..