모두의 코드
모두의 코드

총 42 개의 강의로 준비된 씹어먹는 C 언어 강좌를 통해 C 언어의 처음부터 끝까지 배우실 수 있습니다! 특히 악명 높은 C 언어의 포인터나, 어려운 개념들을 충실히 짚고 넘어갑니다.

이 강좌는 2010년에 완결되었지만, 지속적으로 개선 및 보완하고 있습니다.

C 언어 문법을 아시는 분들이라면, 씹어먹는 C++ 강좌를 통해 C++ 기초 부터 최근의 C++ 17 까지 모든 내용을 배우실 수 있습니다. C 언어와 C++ 의 기본적인 문법이 비슷하기 때문에, C 언어를 어느 정도 아는 독자를 가정하여 쓰여져 있습니다.

이 강좌는 2020년에 완결되었고 총 50 개의 강좌가 준비되어 있습니다.

사이트 내에서 검색 하기
C 언어 레퍼런스
표준 입출력 라이브러리 stdio.h
문자열 관련 라이브러리 string.h
시간 관련 라이브러리 time.h
C ++ 레퍼런스
문자열 라이브러리 string
알고리즘 라이브러리 algorithm
최근 댓글
#include <iostream> class Date { int year; int month; // 1 부터 12 까지. int day; // 1 부터 31 까지. public: void SetDate(int year_, int month_, int day_) { year = year_; month = month_; day = day_; } void AddDay(int inc) { day += inc; day_update(); } void AddMonth(int inc) { month += inc; month_update(); } void AddYear(int inc) { year += inc; } void day_update() { switch (month) { case 1: case 3: case 5: case 7: case 8: case 10: case 12: if (day > 31) { day -= 31; AddMonth(1); day_update(); } break; case 2: if (day > 28) { day -= 28; AddMonth(1); day_update(); } break; case 4: case 6: case 9: case 11: if (day > 30) { day -= 30; AddMonth(1); day_update(); } break; } } void month_update() { if (month > 12) { month -= 12; AddYear(1); } if (month > 12) month_update(); } void ShowDate() { std::cout << year << "년 " << month << "월 " << day << "일 입니다." << std::endl; } }; int main(void) { Date date; date.SetDate(0, 0, 0); while (true) { int idx= 0; std::cout << "원하는 명령을 입력해주세요" << std::endl; std::cout << "1 : 날짜 선택" << std::endl; std::cout << "2 : day 추가" << std::endl; std::cout << "3 : month 추가" << std::endl; std::cout << "4 : year 추가" << std::endl; std::cout << "5 : 날짜 보기" << std::endl; std::cout << "6 : 프로그램 종료" << std::endl; std::cin >> idx; switch (idx) { case 1: { int y, m, d = 0; std::cout << "year를 입력하세요" << std::endl; std::cin >> y; std::cout << "month를 입력하세요" << std::endl; std::cin >> m; std::cout << "day를 입력하세요" << std::endl; std::cin >> d; date.SetDate(y, m, d); break; } case 2: { std::cout << "더하려는 수를 입력하세요" << std::endl; std::cin >> idx; date.AddDay(idx); break; } case 3: { std::cout << "더하려는 수를 입력하세요" << std::endl; std::cin >> idx; date.AddMonth(idx); break; } case 4: { std::cout << "더하려는 수를 입력하세요" << std::endl; std::cin >> idx; date.AddYear(idx); break; } case 5: { date.ShowDate(); break; } case 6: { exit(0); } } } return 0; }
Dongja Ro 12.06
나이승민 11.29