반응형

전체 글 2934

원형 큐 - 버퍼 크기 고정, 정수 보관, C언어 소스

원형 큐 - 버퍼 크기 고정, 정수 보관, C언어 소스 //원형 큐 - 버퍼 크기 고정, 정수 보관#include #define QUEUE_SIZE 10#define NEXT(index) ((index+1)%QUEUE_SIZE) //원형 큐에서 인덱스를 변경하는 매크로 함수 typedef struct Queue //Queue 구조체 정의{ int buf[QUEUE_SIZE];//저장소 int front; //꺼낼 인덱스(가장 오래전에 보관한 데이터가 있는 인덱스) int rear;//보관할 인덱스}Queue; void InitQueue(Queue *queue);//큐 초기화int IsFull(Queue *queue); //큐가 꽉 찼는지 확인int IsEmpty(Queue *queue); //큐가 비었는..

스택 - 연결리스트로 구현, C언어 소스

스택 - 연결리스트로 구현, C언어 소스 //스택 - 연결리스트로 구현 #include #include typedef struct Node //노드 정의 { int data; struct Node *next; }Node; typedef struct Stack //Stack 구조체 정의 { Node *top; //맨 앞 노드(가장 최근에 생성한 노드) }Stack; void InitStack(Stack *stack);//스택 초기화 int IsEmpty(Stack *stack); //스택이 비었는지 확인 void Push(Stack *stack, int data); //스택에 보관 int Pop(Stack *stack); //스택에서 꺼냄 int main(void) { int i; Stack stack; ..

스택 - 버퍼 크기 자동 확장, 동적 생성한 자료 보관, C언어 소스

스택 - 버퍼 크기 자동 확장, 동적 생성한 자료 보관, C언어 소스 //스택 - 버퍼 크기 자동 확장, 동적 생성한 자료 보관 #include #include #include typedef void * Element; //void * 형식을 Element 형식 명으로 정의 typedef struct Stack //Stack 구조체 정의 { Element *buf;//저장소 int ssize;//저장소 크기 int top; //가장 최근에 보관한 인덱스 }Stack; Stack *NewStack();//스택 생성자 void DeleteStack(Stack *stack);//스택 소멸자 int IsFull(Stack *stack); //스택이 꽉 찼는지 확인 int IsEmpty(Stack *stack);..

스택 - 버퍼 크기 자동 확장, C언어 소스

스택 - 버퍼 크기 자동 확장, C언어 소스 //스택 - 버퍼 크기 자동 확장 #include #include typedef struct Stack //Stack 구조체 정의 { int *buf;//저장소 int ssize;//저장소 크기 int top; //가장 최근에 보관한 인덱스 }Stack; Stack *NewStack();//스택 생성자 void DeleteStack(Stack *stack);//스택 소멸자 int IsFull(Stack *stack); //스택이 꽉 찼는지 확인 int IsEmpty(Stack *stack); //스택이 비었는지 확인 void Push(Stack *stack, int data); //스택에 보관 int Pop(Stack *stack); //스택에서 꺼냄 int ..

스택 - 동적 생성, 소멸, C언어 소스

스택 - 동적 생성, 소멸, C언어 소스 // 스택 - 동적 생성, 소멸 #include #include typedef struct Stack //Stack 구조체 정의{ int *buf;//저장소 int ssize;//저장소 크기 int top; //가장 최근에 보관한 인덱스}Stack; Stack *NewStack(int ssize);//스택 생성자void DeleteStack(Stack *stack);//스택 소멸자int IsFull(Stack *stack); //스택이 꽉 찼는지 확인int IsEmpty(Stack *stack); //스택이 비었는지 확인void Push(Stack *stack, int data); //스택에 보관int Pop(Stack *stack); //스택에서 꺼냄 int m..

스택 - 버퍼를 동적 할당, 정수 형식 보관, C언어 소스

스택 - 버퍼를 동적 할당, 정수 형식 보관, C언어 소스 //스택 - 버퍼를 동적 할당, 정수 형식 보관 #include #include typedef struct Stack //Stack 구조체 정의 { int *buf;//저장소 int ssize;//저장소 크기 int top; //가장 최근에 보관한 인덱스 }Stack; void InitStack(Stack *stack, int ssize);//스택 초기화 int IsFull(Stack *stack); //스택이 꽉 찼는지 확인 int IsEmpty(Stack *stack); //스택이 비었는지 확인 void Push(Stack *stack, int data); //스택에 보관 int Pop(Stack *stack); //스택에서 꺼냄 void D..

스택 - 고정 크기 버퍼, 정수 형식 보관, C언어 소스

스택 - 고정 크기 버퍼, 정수 형식 보관, C언어 소스 //스택 - 고정 크기 버퍼, 정수 형식 보관 #include #include #define STACK_SIZE 10 typedef struct Stack //Stack 구조체 정의 { int buf[STACK_SIZE];//저장소 int top; //가장 최근에 보관한 인덱스 }Stack; void InitStack(Stack *stack);//스택 초기화 int IsFull(Stack *stack); //스택이 꽉 찼는지 확인 int IsEmpty(Stack *stack); //스택이 비었는지 확인 void Push(Stack *stack, int data); //스택에 보관 int Pop(Stack *stack); //스택에서 꺼냄 int m..

원형 연결리스트로 러시안룰렛, C언어 소스

원형 연결리스트로 러시안룰렛, C언어 소스 //원형 연결리스트로 러시안룰렛//주석을 살펴보세요.막코딩입니다.#include #include #include #include typedef struct _Node { int bullet;//총알(1:장전, 0:없음) struct _Node *next;}Node;void Game(); //게임 void MakeRoulette(Node **head, int n); //권총 약실이 n개인 러시안 룰렛 생성void ClearRoulette(Node **head); //러시안 룰렛 지우기int main(){ int key; srand((unsigned)time(0));//랜덤에 사용할 seed값 설정 while (1) { printf("=== 러시안 룰렛 게임 ===..

3X3 퍼즐 게임, C언어 소스

3X3 퍼즐 게임, C언어 소스 #include #include #include #define LEFT 75 #define RIGHT 77 #define UP 72 #define DOWN 80 int get_directionkey()//방향키를 입력받는 함수 { int key; key = _getch(); if (key == 224)//방향키 { return _getch(); //어떤 방향 키인지 반환 } return 0; //방향키가 아님 } void print_puzzle(int puzzle[][3]) { int r, c; system("cls"); //콘솔 화면을 지우기 for (r = 0; r0) { puzzle[row][col] = puzzle[row][col - 1]; puzzle[row][c..

앞 뒤가 똑같은 문장 회문(Palindrome), C언어 소스

앞 뒤가 똑같은 회문(Palindrome), C언어 소스 //회문(Palindrome) //앞 뒤가 똑같은 문을 회문(Palindrome) 이라고 합니다. #include #include #include #include int Palindrome(char str[]); int main() { char test_str[5][100] = { "HannaH",//회문인 예 "ReliefpfeileR",//회문인 예 "Root",//회문이 아닌 예 "RotoR",//회문인 예 "RentneR"//회문인 예 }; int i = 0; for (i = 0; i

반응형