분야별도서 > 프로그래밍 > C프로그래밍

분야별도서

Perfect C 전면개정판

C언어로 배우는 프로그래밍 기초
  • 저자강환수, 강환일, 이동규
  • 발행일2016-01-11
  • 정가29,000원
  • 페이지804 페이지
  • ISBN979-11-85578-22-4
  • 책소개
  • 저자소개
  • 목차
  • 출판사 서평
C언어로 배우는 프로그래밍 기초

C언어는 모바일혁명 시대가 도래한 현재에도 가장 기본이 되는 컴퓨터언어이다. 따라서 가장 기본이 되는 프로그래밍 언어라면 완벽하게(Perfect) 모든 내용을 이해하고 자기 것으로 만들어야 한다. 본서를 통해 누구라도 모국어처럼 C언어를 활용할 수 있을 것이다. Perfect C는 걸음마와 같은 프로그래밍의 개념부터 포인터를 넘어 동적메모리와 고급전처리까지, C언어 학습에서 놓치지 말아야 할 모든 내용을 빠짐없이 기술하였다.

강환수 교수

서울대학교 계산통계학과에서 학사학위, 서울대학교 전산과학과에서 전산학 이학석사(M. S.), 서울대학교 컴퓨터공학부에서 박사를 수료하였다. 1998년까지 삼성SDS의 정보기술연구소에서 선임연구원으로 재직 중에 지식관리시스템(Knowledge Management Systems)과 그룹웨어시스템(Groupware Systems)개발에 프로젝트 매니저로 참여하였다.

1998년에 동양미래대학교로 자리를 옮겨 현재, 동양미래대학교 컴퓨터정보공학과 교수로 재직하고 있다. 컴퓨터관련 교육에 관심이 있어 프로그래밍 언어에 관련된 서적인 C로 배우는 프로그래밍 기초(학술정보, 2003), 자바로 배우는 프로그래밍 기초(학술정보, 2005), 유비쿼터스 시대의 컴퓨터 개론(학술정보, 2006), Perfect C(인피니티북스, 2007), C로 배우는 프로그래밍 기초 2(인피니티북스, 2008), C언어 스케치(인피니티북스, 2011), 절대JAVA(인피니티북스, 2013), 모바일 시대의 컴퓨터개론(인피니티북스, 2014) 등을 저술하였으며 역서로는 비주얼 베이직으로 배우는 프로그래밍 기초(학술정보, 2005) 등이 있다.

강환일 교수

서울대학교 전자공학과에서 학사학위를 취득하였고, 한국과학기술원(KAIST) 전기 및 전자공학과에서 공학석사를 취득하였다. 미국 위스콘신(메디슨)대학 전기 및 컴퓨터공학과에서 박사학위를 취득하였다. 현재 명지대학교 정보통신공학과에서 교수로 재직 중이며, 캐나다 토론토대학 전기공학과 및 미국 퍼듀대학교 전기공학과 방문교수를 역임하였고, 2014년에는 영국 크랜필드대학(슈리븐햄 캠퍼스) 국방분야의 단기과정을 이수하였다. 주요 연구 분야는 멀티미디어 보안 및 처리, 정보통신 응용 및 국방관련 최적화연구와 강인제어시스템 등이다.

저서로는 C로 배우는 프로그래밍 기초(학술정보, 2003), 자바로 배우는 프로그래밍 기초(학술정보, 2005), 유비쿼터스 시대의 컴퓨터개론(학술정보, 2006), 모바일 시대의 컴퓨터개론(인피니티북스, 2014) 등이 있다.


이동규 교수

서울대학교 전자공학과에서 학사학위 및 석사학위를 취득하였고, 서울대학교 기술경영대학원에서 박사학위를 취득하였다. 삼성전자의 통신연구소 전임연구원이었으며, 삼성전자에서 근무하는 기간(1992 ~ 1998)에 교환기부가시스템의 운영체제를 개발하였으며, 현재 동양미래대학교 컴퓨터공학부에서 교수로 재직 중이다.

저서로는 C언어 스케치(인피니티북스, 2011) 등이 있다.
Chapter 01 프로그래밍언어 개요
1.1 '프로그램'이 무엇일까?
1.2 언어의 계층과 번역
1.3 왜 C언어를 배워야 할까?
1.4 프로그래밍의 자료 표현
1.5 소프트웨어 개발
1.6 다양한 '프로그래밍 언어'
프로그래밍 연습

Chapter 02 C프로그래밍 첫걸음
2.1 프로그램 구현 과정과 통합개발환경
2.2 비주얼 스튜디오 설치와 C프로그램의 첫 개발
2.3 C프로그램의 이해와 디버깅 과정
프로그래밍 연습

Chapter 03 자료형과 변수
3.1 프로그래밍 기초
3.2 자료형과 변수선언
LAB 두 정수의 합, 두 부동소수의 차 출력
3.3 기본 자료형
LAB 아스키 코드값 126 문자 '~'의 다양한 출력
3.4 상수 표현방법
LAB 부동소수형 최대 최소 매크로 상수 출력
프로그래밍 연습

Chapter 04 전처리와 입출력
4.1 전처리
LAB 문자열 출력을 위한 매크로 정의
4.2 출력함수 printf()
LAB 정수와 살수, 문자와 문자열의 출력
4.3 입력 함수 scanf()
LAB 십진수, 팔진수, 십육진수인 세 정수를 입력 받아 적절히 출력
프로그래밍 연습

Chapter 05 연산자
5.1 연산식과 다양한 연산자
LAB 표준입력된 두 실수의 산술연산 출력
5.2 관계와 논리, 조건과 비트연산자
LAB 표준입력으로 받은 두 정수의 비트 연산 수행 출력
5.3 형변환 연산자와 연산자 우선순위
LAB 두 정수의 합, 두 부동소수의 차 출력
프로그래밍 연습

Chapter 06 조건
6.1 제어문 개요
6.2 조건에 따른 선택 if문
LAB 표준입력으로 받은 두 실수의 대소에 따라 다양한 연산을 수행하여 그 결과를 출력
LAB 표준입력으로 받은 세 정수의 최대값을 출력값을 출력
6.3 다양한 선택 switch문
LAB 표준입력으로 받은 세 정수의 최대값을 출력
LAB 표준입력으로 받은 정수에 대응하는 열거 상수로 switch 문 활용
프로그래밍

Chapter 07 반복
7.1 반복 개요와 while 문
LAB 0부터 20까지 3의 배수 출력
7.2 do while문과 for 문
LAB 백단위 정수의 각 자릿수 출력
LAB 구구단을 위한 준비 출력
7.3 분기문
LAB 1부터 15까지 5의 배수가 아닌 정수 출력
LAB 구구단을 위한 준비 출력
7.4 중첩된 반복문
LAB 구구단 출력
프로그래밍 연습

Chapter 08 포인터 기초
8.1 포인터 변수와 선언
LAB 다양한 자료형 포인터 변수 선언에 의한 주소값 출력
8.2 간접 연산자 *와 포인터 연산
LAB 포인터를 이용하여 두 수의 값을 교환하는 프로그램
8.3 포인터 형변환과 다중 포인터
LAB 표준입력으로 받은 두 실수의 덧셈을 포인터 변수를 사용해 수행하고 출력
프로그래밍 연습

Chapter 09 배열
9.1 배열 선언과 초기화
LAB 장수 int 형 배열에 표준입력으로 받은 정수를 저장하여 출력
9.2 이차원과 삼차원 배열
LAB 이차원 배열에서 원소참조, 주소와 저장값을 출력
9.3 배열과 포인터 관계
LAB 실수를 위한 배열크기가 2인 double 형 배열 내부에 int 형 자료값을 4개 저장하여
이 정수가 저장된 공간의 주소와 저장값을 출력
9.4 포인터 배열과 배열 포인터
LAB 이차원 배열에서 각 행의 첫 주소와 2행의 모든 원소의 조소와 값을 출력
프로그래밍 연습

Chapter 10 함수기초
10.1 함수정의와 호흡
LAB 1에서부터 표준입력으로 받은 양의 정수까지 합을 구하는 함수 getsuum()
10.2 함수의 매개변수 활용
LAB 배열의 모든 원솔르 지정한 만큼 증가시키는 함수 incrementary()
10.3 재귀와 라이브러리 함수
LAB 1에서 100사이의 난수 알아 맞추기
프로그래밍 연습

Chapter 11 문자와 문자열
11.1 문자와 문자열
LAB 한 행을 표준입력으로 받아 문자 하나 하나를 그대로 출력
11.2 문자열 관련 함수
LAB 문자열을 역순으로 저장하는 함수 reverse()구현
11.3 여러 문자열 처리
LAB 여러 문자열 처리
프로그래밍 연습

Chapter 12 변수 유효범위
12.1 전역변수와 지역변수
LAB 피보나츠 수의 출력
12.2 정적 변수와 레지스터 변수
LAB 지역변수와 정적변수의 사용
12.3 메모리 영역과 변수 이용
LAB 은행계좌의 입출금 구현
프로그래밍 연습

Chapter 13 구조체와 공용체
13.1 구조체와 공용체
LAB 도시의 이름과 위치를 표현하는 구조체
13.2 자료형 재정의
LAB 영화 정보를 표현하는 구조체
13.3 구조체와 공용체의 포인터와 배열
LAB 영화 정보를 표현하는 구조체의 배열
프로그래밍 연습

Chapter 14 함수와 포인터 활용
14.1 함수의 인자전달 방식
LAB 함수에서 배열 활용
14.2 포인터 전달과 반환
LAB 책 정보를 표현하는 구조체 전달
14.3 함수 포인터와 void 포인터
LAB 함수 포인터 배열의 활용
프로그래밍 연습

Chapter 15 파일처리
15.1 파일 기초
LAB 파일 "myinfo.txt"을 열어 간단한 정보를 출력
15.2 텍스트 파일 입출력
LAB 파일의 대소문자를 서로 바꿔 다른 파일로 생성
15.3 이진 파일 입출력
LAB 학생정보를 표현하는 구조체 배열을 파일에 쓰고 다시 파일에 저장된 학생정보를 다시 읽어오기
15.4 파일 접근 처리
LAB 정수 배열값을 파일에 출력한 후 다시 입력
프로그래밍 연습

Chapter 16 동적 메모리와 전처리
16.1 동적 메모리와 자기참조 구조체
LAB 직원을 위한 자기참조 구조체 구현
16.2 연결 리스트
LAB 노드 3개로 구성된 연결 리스트
16.3 전처리
LAB 다양한 자료형의 변수 내용을 서로 교환하는 매크로
프로그래밍 연습