C언어응용 제1주 강의 안내, C로 프로그램 개발하기 컴퓨터시뮬레이션학과 2013년 가을학기 담당교수 : 이형원

Slides:



Advertisements
Similar presentations
연천 새둥지마을 체재형 주말농장 준공식 초청장 오시는 길 주제 일시 장소 21C 경기농촌희망심기 2005년 제1기 교육수료마을
Advertisements

SPARCS Wheel Seminar Mango X Sugoi
출석수업 자료 교과서 범위: 제1장-4장.
10월 충북노회 남선교회 순회 헌신예배 묵 도 기 도 성 경 봉 독 특 송 찬 양 설 교 찬양 / 봉헌 봉 헌 기 도
글에 나타난 시대적 사회적 배경을 파악할 수 있다. 배경 지식과 의미 해석의 관련성을 이해할 수 있다.
패널자료 분석
라오디게아 교회의 교훈 본문 계 3: ○라오디게아 교회의 사자에게 편지하라 아멘이시요 충성되고 참된 증인이시요 하나님의 창조의 근본이신 이가 이르시되 15. 내가 네 행위를 아노니 네가 차지도 아니하고 뜨겁지도 아니하도다 네가 차든지 뜨겁든지 하기를 원하노라.
한알Ⅱ「더불어 살기」전국대회 일정표 날짜 시간 7월 26일(목) 7월 27일(금) 7월 28일(토) 7월 29일(일)
2013학년도 전라북도고등학교신입생 입학전형 기본계획
선거관리위원회 위원 공개모집 4차 공고 제4기 선거관리위원회를 구성하는 위원 모집의
2015학년도 1학기 버디 프로그램 오리엔테이션 (목) 16:00.
열왕기하 1장을 읽고 묵상으로 예배를 준비합시다..
오늘의 학습 주제 Ⅱ. 근대 사회의 전개 4. 개항 이후의 경제와 사회 4-1. 열강의 경제 침탈 4-2. 경제적 구국 운동의 전개 4-3. 사회 구조와 의식의 변화 4-4. 생활 모습의 변화.
전도축제 계획서 *일시 : 2013년 4월 21, 28일 주일 (연속 2주)
2009학년도 가톨릭대학교 입학안내.
한국 상속세 및 증여세 과세제도 한국 국세공무원교육원 교 수 최 성 일.
중세시대의 의복 학번 & 이름.
다문화가정의 가정폭력의 문제점 연세대학교 행정대학원 정치행정리더십 2학기 학번 이름 홍 진옥.
이공계의 현실과 미래 제조업 立國 / 이공계 대학생의 미래 준비
신앙의 기초를 세우는 중고등부 1부 대 예 배 : 11 : 00 ~ 12 : 층 본당
신앙의 기초를 세우는 중고등부 1부 대 예 배 : 11 : 00 ~ 12 : 층 본당
◆ 지난주 반별 출석 보기 ◆ 제 56 권 26호 년 6월 26일 반 선생님 친구들 재적 출석 5세 화평 김성희 선생님
第1篇 자치입법 개론.
교직원 성희롱·성폭력·성매매 예방교육 벌교중앙초등학교 박명희
제5장 새로운 거버넌스와 사회복지정책 사회복지정책이 어떤 행위자에 의해 형성되고 집행되는지, 어떤 과정에서 그러한 일들이 이루어지는지, 효과적인 정책을 위해서는 어떤 일들이 필요한지 등을 본 장에서 알아본다 개인들이 생활을 개선하는 가장 효과적인고 궁극적인 방법은 개별적.
임상시험 규정 (최근 변경 사항 중심으로) -QCRC 보수 교육 과정 전달 교육
서울특별시 특별사법경찰 수사 송치서류 유의사항 서울특별시 특별사법경찰과 북부수사팀장 안   진.
특수학교용 아동학대! 제대로 알고 대처합시다..
사회복지현장의 이해 Generalist Social Worker 사회복지입문자기초과정 반포종합사회복지관 김한욱 관장
학교보건 운영의 실제 한천초등학교 이 채 금.
제 출 문 고용노동부 귀중 본 보고서를 ’ ~ ‘ 까지 실시한 “근로감독관 직무분석 및 교육프로그램 개발에 관한 연구”의 최종보고서로 제출합니다  연구기관 : 중앙경영연구소  프로젝트 총괄책임자 : 고병인 대표.
학습센터란? 기도에 관해 배울 수 있는 다양한 학습 코너를 통하여 어린이들이 보다 더 쉽게 기도를 알게 하고, 기도할 수 있게 하며, 기도의 사람으로 변화될 수 있도록 하는 체험학습 프로그램이다. 따라서 주입식이지 않으며 어린이들이 참여할 수 있는 역동적인 프로그램으로.
Digital BibleⅢ 폰속의 성경 디지털 바이블 2008년 12월 ㈜씨엔커뮤니케이션 ㈜씨엔엠브이엔오.
후에 70인역(LXX)을 좇아 영어 성경은 본서의 중심 주제인 “엑소도스”(출애굽기)라 하였다.
성 김대건 피츠버그 한인 성당 그리스도왕 대축일 공지사항
예배에 대하여.
말씀 듣는 시간입니다..
하나님은 영이시니 예배하는 자가 신령과 진정으로 예배할지니라.
지금 나에게 주신 레마인 말씀 히브리서 13장 8절.
예수의 제자들 담당교수 : 김동욱.
Lecture Part IV: Ecclesiology
KAINOS 날마다 더하여지는 Kainos News 이번 주 찬양 20 / 300 – 20개의 셀, 300명의 영혼
예배의 외부적인 틀II - 예배 음악 조광현.
영성기도회 렉시오 디비나와 묵상기도 2.
성인 1부 성경 공부 지도목사: 신정우 목사 부 장: 오중환 집사 2010년. 5월 9일
남북 탑승객 150명을 태운 디젤기관차가 2007년 5월 17일 오전 경의선 철길을 따라 남측 최북단 역인 도라산역 인근 통문을 통과하고 있다. /문산=사진공동취재단.
성경 암송 대회 한일교회 고등부 (일).
천주교 의정부교구 주엽동본당 사목협의회 사목활동 보고서
III. 노동조합과 경영자조직 노동조합의 이데올로기, 역할 및 기능 노동조합의 조직형태 노동조합의 설립과 운영
여수시 MICE 산업 활성화 전략 ( 중간보고 )
1. 단위사업 관리, 예산관리 사업설정 (교직원협의/의견수렴) 정책 사업 학교 정책 사업 등록 사업 기본정보 목표 설정
※과정 수료자에 한하여 수강료의 80~100% 차등 환급함
평생학습중심대학 프로그램 수강지원서 접수안내 오시는 길 관악구&구로구민을 위한 서울대학교 -- 접수 일정 및 방법 안내--
서비스산업의 선진화, 무엇이 필요한가? 김 주 훈 한 국 개 발 연 구 원.
기존에 없던 창업을 하고 싶은데, 누구의 도움을 받아야 할지 모르겠어요
전시회 개요 Ⅰ. 전시명칭 개최기간 개최장소 개최규모 주 최 참 관 객 현 지 파 트 너 General Information
Homeplus 일 家 양 득 프로그램 소개 2015년 12월.
Home Network 유동관.
통신이론 제 1 장 : 신호의 표현 2015 (1학기).
I. 기업과 혁신.
Chapter 4 – 프로그래밍 언어의 구문과 구현 기법

ESOCOM – IPIX 고정IP서비스 제안서 Proposer ㈜이소컴.
화장품 CGMP 한국콜마㈜.
초화류 종자 시장 규모 100억원 이상(추정, 생산액의 10%정도 차지)
COMPUTER ARCHITECTIRE
[ 한옥 실측 ] 1. 약실측 2. 정밀실측 조선건축사사무소.
14. 컴파일러 자동화 도구 스캐너 생성기 파서 생성기 코드 생성의 자동화
A제조용수/B환경관리/C시설관리 ㈜ 에이플러스 코리아
Introduction to Network Security
Presentation transcript:

C언어응용 제1주 강의 안내, C로 프로그램 개발하기 컴퓨터시뮬레이션학과 2013년 가을학기 담당교수 : 이형원 E304호, hwlee@inje.ac.kr

강의소개 담당교수 : 컴퓨터시뮬레이션학과 이형원 교재 : 알고리즘기반 자료구조 강의시간 : 화1,2,3,4교시, E323 평가방법 네 번의 필기 시험 : 총 30% 1,3차 시험 : 각 5% 중간, 기말 필기고사 : 각 10% 두 번의 실기 시험 : 총 30%(각 15%) 10번의 숙제 : 총 20% 수업참여 : 10% 출석 : 총 10%

강의자료 http://ecampus.inje.ac.kr 로그인 후 사용

강의자료

강의 일정 1주차 : 강의 안내, C로 프로그램 개발하기(1학기 복습) 2주차 : 자료구조와 알고리즘 소개, 자료표현(1,2장) 3주차 : 자료구조 응용(3장) 4주차 : 1차 필기시험 5주차 : 재귀와 분할 정보(4장) 6주차 : 그리디 알고리즘과 문제해결(5장) 7주차 : 그리디 알고리즘과 문제해결(5장) 8주차 : 중간고사 필기 및 실기 시험

강의일정(계속) 9주차 : 정렬기법(6장) 10주차 :정렬기법(6장) 11주차 : 탐색기법(7장) 12주차 : 3차필기 시험 13주차 : 그래프기법(8장) 14주차 : 그래프기법(8장) 15주차 : 트리(9장) 16주차 : 기말고사 필기 및 실기 시험

강의 진행 강의 노트 준비 지난 주 실습 내용 토론하기 내용에 대한 질문과 답하기 새로운 단어 이해하기 실습 내용 설명 및 실습시간에 실습하기 다음 주 강의 내용 교재 읽어오기 숙제 해서 제출하기

시험 준비 각자 A4의 ¼ 크기의 요약집을 준비 한다. (10 점 제공, 시험시간에 제출)

즐겁게 공부합시다

토론을 위한 질문 실행파일을 만드는 과정은 어떻게 되나요? 비주얼스투디오에서 프로젝트를 생성하려면 어떻게 하면 되나요? C의 기본 자료형은 무엇인가? 함수란 무엇인가? 함수의 원형은 무엇인가? 프로그램을 작성하기 위한 기본 논리는 무엇인가?

책 읽기 퀴즈 컴퓨터 프로그램은 수집한 여러 가지 ( )에 대해 정해진 ( ) 대로 특별한 처리를 수행하여, 의사결정에 사용할 수 있는 ( )를 얻 기 위해 컴퓨터에게 내리는 ( )을 모아놓은 것이다. 컴퓨터를 구성하는 물리적 장치인 하드웨어는 중앙처리장치, ( ), 입력장치, ( )로 구성된다. ( )란 오디오 시스템에서 재생되는 노래처럼 컴퓨터하드웨어 에 의해 실행될 프로그램을 말한다. 컴퓨터에게 명령을 내릴 때는 컴퓨터가 이해할 수 있는 유일한 언어인 ( )를 이용해야 한다.

단어 퀴즈 중앙처리장치 소프트웨어 프로그램 기계어 프로그램언어 콤파일 링크 실행 라이브러리 디버깅

예제 문제 다음 빈칸을 채우시오 프로그램을 개발하는 데 필요한 컴파일러, 디버거, 에디터 등을 통합적으로 제공하는 개발 환경을 ( )이라 한다.

다음 주 과제 실습하기 1,2장 읽어오기 숙제 해서 제출하기

C로 프로그램 개발하기(1학기 복습) 컴퓨터 프로그램 응용(application) 프로그램 프로그램 실행 과정 수집한 여러 가지 데이터(data)에 대해 정해진 절차대로 특별한 처리를 수행하여 의사 결정에 사용할 수 있는 정보(information)를 얻기 위해 컴퓨터에게 내리는 명령을 모아놓은 것 응용(application) 프로그램 운영체제 외에 사용자의 목적에 맞게 개발되어 배포되는 프로그램 워드 프로세서(아래아 한글, MS-워드 등) 그래픽 편집 프로그램(포토샵 등) 프레젠테이션 제작 도구(MS-파워포인트 등) 스프레드시트(MS-엑셀 등) 프로그램 실행 과정 프로그램은 주기억장치에 저장 즉 적재(loading)된 후 CPU에 의해 명령이 하나씩 해석된 후 적절한 장치에 의해 실행된다.

1.3 프로그램 개발 과정 p.26 프로그램 개발 과정

1.4.1 비주얼 C++ 2010 익스프레스 설치 p.30 비주얼 C++ 2010 익스프레스 교육이나 비상업적 목적으로 무료로 설치할 수 있는 C/C++ 프로그램 개발 도구(tool) 소스 코드 편집기, 컴파일러, 링커, 디버거(디버깅을 도와주는 프로그램) 등 을 통합하여 한꺼번에 제공하는 통합 개발 환경(IDE: Integrated Development Environments) 마이크로소프트 다운로드 사이트에서 다운받을 수 있음

1.4.1 비주얼 C++ 2010 익스프레스 설치 p.30 www.microsoft.com/visualstudio/en-us/products/2010-editions/express 접속하여 다운 받기 사이트가 변경되었음

1.4.1 비주얼 C++ 2010 익스프레스 설치 p.30 2. 바탕화면에 다운로드한 파일 ‘vc_web.exe’를 더블 클릭 ① [설치 시작] 창의 [다음] 단추를 클릭  사용 약관 동의 창 ② [사용 약관] 창의 [동의함]을 선택한 후 ③ [다음] 단추를 클릭

1.4.1 비주얼 C++ 2010 익스프레스 설치 p.31 3. 설치 옵션 설정하기

1.4.1 비주얼 C++ 2010 익스프레스 설치 p.32 4. 비주얼 C++ 2010 익스프레스 시작하기 윈도우즈 작업 표시줄 왼쪽의 [시작] 단추  [프로그램]  [Microsoft Visual Studio 2010 Express]  [Microsoft Visual C++ 2010 Express] 선택  비주얼 C++ 2010 익스프레스가 시작됨

1.4.2 비주얼 C++ 2010 익스프레스 사용 p.32 솔루션(solution)  프로젝트(project)  소스 파일의 관계 프로젝트 프로그래머가 작성한 소스 파일 및 프로그램 개발 과정에서 생성되는 모든 파일은 프로젝트에서 관리됨  프로젝트 단위로 프로그램을 개발 솔루션 여러 개의 프로젝트를 개발해야 할 때 프로젝트들을 묶어서 관리하게 해주는 것이 솔루션 책상(솔루션)에 C 언어에 관한 책(소스 파일)이 여러 권 쌓여 있는 것(프로젝트) 영어 회화에 관한 책(소스 파일)이 여러 권 쌓여 있는 것(프로젝트) 과 같은 개념  프로그램을 개발하려면 솔루션 안에 개발할 프로젝트가 포함되어 있어야 하고 프로젝트 안에는 소스 프로그램 파일 및 관련 파일들이 포함되어 있어야 함 솔루션(C실습) 프로젝트1 (표준편차구하기 ) 소스파일 (표준편차.cpp) 프로젝트2 (정렬하기 ) 소스파일 (정렬.cpp)

프로젝트 만들기 p.32 프로젝트 만들기 비주얼 C++ 2010 창의 [시작 페이지] 창  [새 프로젝트] 클릭 기존의 프로젝트를 실행하다가 새 프로젝트를 만들 때는 [파일]  [새로 만들기]  [프로젝트] 메뉴를 선택하여 만들 수 있다

프로젝트 만들기 p.33 2. 다른 것을 선택하지 않도록 주의한다.

프로젝트 만들기 p.34 3. ① [Win32 응용 프로그램 마법사 시작] 창의 [다음] 단추 클릭 ② [응용 프로그램 설정] 창에서 [콘솔 응용 프로그램]을 선택 ③ 추가 옵션을 [빈 프로젝트]로 선택한 후 ④ [마침]을 클릭

프로젝트에 소스 파일 추가하기 p.34 1. ① [솔루션 탐색기]의 [소스 파일]에서 마우스 오른쪽 버튼을 누르고 ② [추가]-[새 항목]을 클릭 또는 이 새 항목 추가 단추를 클릭한 후 [새 항목 추가]를 선택해도 된다.

프로젝트에 소스 파일 추가하기 p.35 2. 추가할 항목의 종류와 이름 지정 소스 파일명 지정 확장자를 생략하고‘hello’만 입력하면 자동으로 확장자가 cpp로 지정되므로 소스 파일의 이름은 ‘hello.cpp’가 된다. 『주의』 확장자가 ‘.cpp’면 C++ 언어에 맞게 컴파일되므로 C언에서만 제공하는 기능을 사용하려면 반드시 확장자를 ‘.c’로 직접 입력해서 파일명을‘hello.c’로 해야 C언어에 맞게 컴파일된다. 추가할 항목으로 [C++ 파일(.cpp)]을 선택한다. (‘C 파일’이란 항목을 제공하지 않으므로 C++ 파일을 선택한다.)

프로젝트에 소스 파일 추가하기 p.35 3. 프로젝트에 소스 파일이 추가된 후 편집 창에서 소스 프로그램을 입력

프로젝트에 소스 파일 추가하기 p.36 4. 빌드(컴파일 & 링크)하기 ① 소스 프로그램 작성 후 [디버그]-[솔루션 빌드] 메뉴를 선택 (단축 키 [F7]) ② [출력] 창에 빌드 결과가 나타남

프로젝트에 소스 파일 추가하기 p.36 5. 프로그램 실행하기 ① [Ctrl]+[F5]를 눌러 실행

프로젝트에 소스 파일 추가하기 p.37 6. 프로젝트 저장: [파일]  [모두 저장]을 선택

프로젝트에 소스 파일 추가하기 p.37 7. 솔루션 닫기: [파일]  [솔루션 닫기]를 선택

프로젝트에 소스 파일 추가하기 p.38 8. 솔루션 열기 ① [파일]  [열기]  [프로젝트/솔루션] 선택 솔루션에 관련된 정보가 저장된 *.sln 파일은 프로젝트를 만들 때 [위치]에서 지정한 폴더에 저장되어 있다. ② sample.sln 파일을 연다. 팁) [파일]  [최근에 사용한 프로젝트 및 솔루션] 메뉴에는 최근에 작업한 순서로 솔루션 목록이 나타나므로 솔루션 폴더를 찾아가는 번거로움을 덜 수 있다.

컴파일 시간 에러(구문 에러) 수정하기 p.39 1. 컴파일 에러를 내기 뒤해 printf 함수 호출문 끝의 ‘;’을 모두 지우기 소스 프로그램에서 printf 함수 호출문 끝에 있는 ‘;’을 지우면 다시 빌드를 하지 않아도 확인 가능한 에러가 있다면 즉시 소스 코드에 빨간 밑줄이 나타나며 마우스를 가져가면 에러에 관한 정보가 팁으로 나타난다.

컴파일 시간 에러(구문 에러) 수정하기 p.39 2. [디버그]-[솔루션 빌드] 메뉴 또는 [F7] 키를 눌러 다시 빌드

컴파일 시간 에러(구문 에러) 수정하기 p.40 팁) 에러는 가능한 앞에 있는 것부터 수정한다. 컴파일러는 소스 코드를 번역할 때 차례로 번역하다. 에러 메시지만으로 해당 행의 에러를 찾지 못하는 경우에는 그 이전의 행을 분석해야 한다. 앞의 에러로 인해 컴파일러가 올바른 문장도 잘못 번역하는 경우가 많기 때 문에 한 개의 에러를 수정하면 그 뒤의 에러가 자동으로 제거되기도 한다. 프로그램 작성 초기에는 에러를 한 개 수정한 후 바로 다시 빌드하면 에러를 빨리 제거할 수 있다. 첫 에러(6행의 에러)는 이전 행인 5행의 끝에 ‘;’이 빠져서 발생한 에러. 두 번째 에러(8행) 역시 8행 이전 즉 6행 끝에 ‘;’이 빠져서 발생한 에러. 5행과 6행 뒤에 ;을 추가한 후 빌드하면 에러가 없음을 확인할 수 있다.

컴파일 시간 에러(구문 에러) 수정하기 p.40 팁) 에러 수정 후 곧바로 [Ctrl]+[F5] 키를 눌러 실행하기 [주의] 빌드 단계에서 에러가 있을 때 나타나는 대화 상자 에러를 수정하기 위해 [아니오] 단추를 눌러서 [출력] 창의 에러 메시지를 확인하고 에러를 수정하는 작업을 반복한다.

링크 시간 에러 수정하기 p.41 링크 에러를 내기 위해 main( )을 mein( )으로 수정 후 [디버그]-[솔루션 빌드] (또는 [F7]) 를 선택한 결과 프로그램 안에 main 함수가 반드시 포함되어야 하는데 mein으로 작성되어 main 함수를 찾지 못하여 발생한 링크 에러 링크 에러는 대부분 main 철자를 잘못 적거나, main 함수를 포함하고 있는 두 개의 프로그램을 소스 파일에 같이 추가하여(프로젝트의 소스 파일에는 main 함수가 하나만 있어야 한다) 발생한다. 후자의 경우는 실행하지 않을 프로그램을 프로젝트의 소스 파일에서 제거해야 한다.

프로그램 기본 논리 순차(sequence) 분기(branch) 반복(loop) if, if~else, switch for while do~while

제1주 실습 프로그램 반지름을 입력 받아서 원의 둘레와 면적, 그리고 구의 부피를 구한 결과를 소수 둘 째 자리까지 출력하고 소수점에 줄의 맞추어 출력하시오.(Project : w01p01) 시작 년도와 마지막 년도를 입력 받아서 시작 년도의 1월1일 부터 마지막 년도의 12월 31일 까지의 날 수를 계산하여 출력하시오.(Project : w01p02) 1부터 100까지 제곱근의 합을 계산하여 출력하시오.(Project : w01p03) 어느 통신회사의 통화요금 계산을 다음과 같이 한다고 한다. 음성통화 10 초당 7.6원 문자 메시지 건당 50원이다. 그리고 통신비 총액이 60,000원을 넘으면 5%를 할인해 준다고 한다. 이제 사용자로부터 음성 통화량을 초로, 메시지 건수를 받아들여서 총 통화요금을 계산하여 출력하시오.(Project : w01p04) 질량, 좌표x, 좌표y(모두 실수)를 저장하는 구조체를 선언하고 사용자로부 터 5개의 물체에 대한 정로를 읽어 들인 후에 이 물체들의 질량 중심을 계 산하여 출력하시오. 질량중심은 𝒙= 𝒎 𝒊 × 𝒙 𝒊 𝒎 𝒊 ,𝒚= 𝒎 𝒊 × 𝒚 𝒊 𝒎 𝒊 로 계산한다.