ko ko ko en en en ko ko cs zh cs ko ko it ko it ko ko ko ko ko ko ko ko ko ko en ko ko ko en en sv en fr pt de en de en fr de ko ko ko ko ko ko ko ko ko ko ko fr ko ko ko ko ko ko ko it ko ko ko ko ko ko ko ko ko ko ko ko ko ko ko ko ko ko ko ko ko ko ko ko ko ko ko ko ko ko ko ko ko ko ko ko ko ko ko ko ko ko ko ko ko ko ko ko ko ko ko ko ko ko ko ko fr ko ko ko en en ko en zh en en
COS Pro 2급 C 언어: 1.4 C 언어란?
◀ 1.3 알고리즘과 코딩2.0 Visual Studio 설치하기 ▶︎
C 언어는 1972년 켄 톰프슨과 데니스 리치가 벨 연구소에서 일할 당시 유닉스 운영체제를 만들기 위해 고안한 프로그래밍 언어입니다.
그런데 A 언어도 아니고 왜 C 언어일까요? 처음에 켄 톰프슨은 BCPL 언어를 입맛에 맞게 고쳐서 B 언어(벨 연구소의 첫 글자 B를 따서 B 언어로 지음)를 개발했는데 후에 데니스 리치가 B 언어를 개선하여 C 언어가 탄생했습니다.
▼ 그림 1‑8 C 언어의 역사
C 언어는 이후의 프로그래밍 언어에 직간접적으로 많은 영향을 주었는데 C 언어를 배우면 다른 언어를 배우기 쉽다고 하는 이유도 이 때문이죠. 프로그래밍 세계의 공통어라 할 수 있습니다.
우리가 지금도 쓰고 있는 Windows, 리눅스, macOS와 iOS, Android, Windows Phone 모바일 운영체제의 핵심 요소인 커널은 C 언어로 만들어져 있습니다(약간의 어셈블리가 포함됨). 즉, 운영체제의 모든 기능을 이용할 수 있는 건 C 언어죠. 다른 언어들은 모두 C 언어의 기능(라이브러리)을 가져다 쓰는 구조입니다.
▼ 그림 1‑9 C 언어로 개발된 운영체제
그럼 운영체제 말고 C 언어는 또 어디에 쓸까요? Oracle, SQL Server, MySQL과 같은 데이터베이스도 C와 C++로 만들어져 있습니다(C++를 C를 기반으로 객체지향 개념을 추가한 언어). 그리고 에어컨, 세탁기, 스마트 TV 같은 가전제품에는 작은 컴퓨터가 들어있는데 이 컴퓨터는 주로 C 언어를 사용합니다. 또한, 자동차 ECU나 사물인터넷(IoT)도 C 언어를 많이 사용합니다.
특히 메모리와 하드웨어를 직접 제어하는 데는 C 언어를 따라갈 언어가 없습니다. C와 C++을 제외하면 메모리를 직접 제어하는 범용 언어는 많지 않습니다. 스마트폰의 하드웨어를 직접 제어하는 커널이 대부분 C 언어로 작성된 것도 이 때문입니다.
우리 눈에 잘 띄지는 않지만 C 언어는 컴퓨터 세상의 단단한 기반을 이루고 있습니다.
참고 | TIOBE 프로그래밍 언어 순위
▼ 표 1‑1 TIOBE 프로그래밍 언어 순위
여기서 C 언어와 Java는 1위가 서로 바뀌는 언어인데 C 언어도 Java에 못지 않게 인기가 많습니다.
이제 C 언어를 배워야 할 이유가 명확해졌습니다. C 언어는 C++, Java, C#, Objective-C 등의 언어에 큰 영향을 주었기 때문에 이들 언어는 문법을 비롯하여 많은 부분이 C 언어와 유사합니다. 그래서 C 언어를 배우면 다른 언어를 배우기가 쉽습니다.
C 언어가 어렵다는 평가도 있지만 프로그래밍의 기초를 제대로 배우기 좋은 언어입니다. 일단 메모리 관리나 하드웨어에 관련된 내용도 배우기 때문에 컴퓨터의 동작 원리를 함께 이해할 수 있습니다. 이는 다른 언어를 배울 때뿐만 아니라 실무에서도 큰 도움이 됩니다.
◀ 1.3 알고리즘과 코딩2.0 Visual Studio 설치하기 ▶︎
COS Pro 2급 C 언어
Unit 1. 소프트웨어 교육과 C 언어
1.2 문제 해결을 위한 과학적 사고
Unit 2. Visual Studio 설치하기
Unit 3. Hello, world!로 시작하기
Unit 4. 기본 문법 알아보기
Unit 5. 변수 만들기
Unit 6. 디버거 사용하기
Unit 7. 정수 자료형 사용하기
Unit 8. 실수 자료형 사용하기
Unit 9. 문자 자료형 사용하기
Unit 10. 상수 사용하기
Unit 11. 입력 값을 변수에 저장하기
Unit 12. 덧셈, 뺄셈하기
Unit 13. 증가, 감소 연산자 사용하기
Unit 14. 곱셈, 나눗셈하기
Unit 15. 나머지 연산하기
Unit 16. 자료형의 확장과 축소 알아보기
Unit 17. if 조건문으로 특정 조건일 때 코드 실행하기
Unit 18. else를 사용하여 두 방향으로 분기하기
Unit 19. else if를 사용하여 여러 방향으로 분기하기
Unit 20. 비교 연산자와 삼항 연산자 사용하기
Unit 21. 논리 연산자 사용하기
Unit 22. 비트 연산자 사용하기
Unit 23. 불 자료형 사용하기
Unit 24. 연산자 우선순위 알아보기
Unit 25. switch 분기문으로 다양한 조건 처리하기
Unit 26. for 반복문으로 Hello, world! 100번 출력하기
Unit 27. while 반복문으로 Hello, world! 100번 출력하기
Unit 28. do while 반복문으로 최소 한 번은 실행하기
Unit 29. break, continue로 반복문 제어하기
Unit 30. 계단식으로 별 출력하기
Unit 31. 포인터 사용하기
Unit 32. 메모리 사용하기
Unit 33. 배열 사용하기
Unit 34. 2차원 배열 사용하기
Unit 35. 문자열 사용하기
Unit 36. 입력 값을 문자열에 저장하기
Unit 37. 문자열의 길이를 구하고 비교하기
Unit 38. 문자열을 복사하고 붙이기
Unit 39. 문자열 검색하기
Unit 40. 문자열 자르기
Unit 41. 문자열과 숫자를 서로 변환하기
Unit 42 회문 판별과 N-gram 만들기
Unit 43. 자료형 변환하기
Unit 44. 포인터 연산 사용하기
Unit 45. 함수 사용하기
Unit 46. 함수에서 반환값 사용하기
Unit 47. 함수에서 매개변수 사용하기
Unit 48. 함수에서 포인터 매개변수 사용하기
Unit 49. 함수에서 배열 매개변수 사용하기
Unit 50. 배열 정렬하기
Unit 51. 전역 변수 사용하기
COS Pro 2급 파이썬
- 이 사이트에 실린 모든 내용, 디자인, 이미지, 편집 구성의 저작권은 (주)도서출판 길벗과 지은이에게 있습니다.
- 저작권법에 의해 보호를 받는 저작물이므로 무단 전재와 복제를 금합니다.
- 책의 내용을 복제하여 블로그, 웹사이트 등에 게시할 수 없습니다.
- 링크, SNS 공유는 허용합니다.
서울시 마포구 서교동 월드컵로 10길 56 (서울시 마포구 서교동 467-9)
Copyright © 2016-2021 Coding Dojang