Microsoft PowerPoint - 1장 C 프로그래밍 시작하기 pptx

Similar documents
Microsoft PowerPoint - chap01-C언어개요.pptx

untitled

Microsoft PowerPoint - chap02-C프로그램시작하기.pptx

<4D F736F F F696E74202D20C1A632C0E520C7C1B7CEB1D7B7A5B0B3B9DFB0FAC1A4>

Microsoft PowerPoint - chap-02.pptx

Microsoft PowerPoint - chap-02.pptx

프로그래밍개론및실습 2015 년 2 학기프로그래밍개론및실습과목으로본내용은강의교재인생능출판사, 두근두근 C 언어수업, 천인국지음을발췌수정하였음

<4D F736F F F696E74202D204C BAB8C3E6BCB3B8ED202D20C7C1B7CEB1D7B7A1B9D6C0DBBCBAB0FAC1A42C C F>

중간고사

PowerPoint 프레젠테이션

C 프로그램의 기본

비트와바이트 비트와바이트 비트 (Bit) : 2진수값하나 (0 또는 1) 를저장할수있는최소메모리공간 1비트 2비트 3비트... n비트 2^1 = 2개 2^2 = 4개 2^3 = 8개... 2^n 개 1 바이트는 8 비트 2 2

C 언어와 프로그래밍 개요

PowerPoint Presentation

Microsoft PowerPoint - [2009] 02.pptx

OCW_C언어 기초

OCW_C언어 기초

쉽게 풀어쓴 C 프로그래밍

C 언어 프로그래밊 과제 풀이

<4D F736F F F696E74202D20C1A633C0E52043C7C1B7CEB1D7B7A5B1B8BCBABFE4BCD2>

슬라이드 1

Microsoft PowerPoint - 1C언어소개0.PPT

< E20C6DFBFFEBEEE20C0DBBCBAC0BB20C0A7C7D12043BEF0BEEE20492E707074>

BMP 파일 처리

Microsoft PowerPoint - chap-03.pptx

untitled

슬라이드 1

1. 자바프로그램기초 및개발환경 2 장 & 3 장. 자바개발도구 충남대학교 컴퓨터공학과

untitled

Microsoft PowerPoint - ch01.ppt

int main(void) int a; int b; a=3; b=a+5; printf("a : %d \n", a); printf("b : %d \n", b); a b 3 a a+5 b &a(12ff60) &b(12ff54) 3 a 8 b printf(" a : %x \

Microsoft PowerPoint - Lesson2.pptx

슬라이드 1

Microsoft PowerPoint - chap06-2pointer.ppt

쉽게 풀어쓴 C 프로그래밍

윈도우시스템프로그래밍

Microsoft PowerPoint - chap06-1Array.ppt

윈도우시스템프로그래밍

Microsoft PowerPoint - 2주차-1차시 (강의자료) ch01 - C Programming 기초 (part 2)

Microsoft PowerPoint - chap13-입출력라이브러리.pptx

1.2 자료형 (data type) 프로그램에서다루는값의형태로변수나함수를정의할때주로사용하며, 컴퓨터는선언된 자료형만큼의메모리를확보하여프로그래머에게제공한다 정수 (integer) 1) int(4 bytes) 연산범위 : (-2 31 ) ~ (2 31 /2)-

PowerPoint 프레젠테이션

슬라이드 1

untitled

금오공대 컴퓨터공학전공 강의자료


Microsoft PowerPoint - e pptx

: 1 int arr[9]; int n, i; printf(" : "); scanf("%d", &n); : : for(i=1; i<10; i++) arr[i-1] = n * i; for(i=0; i<9; i++) if(i%2 == 1) print

프로그램의실행화면 주석 (comment) 두수의합 : 300 /* 두개의숫자의합을계산하는프로그램 */ 주석은코드를설명하는글입니다. 주석 3 가지방법의주석 주석의예 /* 한줄로된주석 */ /* 저자 : 홍길동날짜 : 2013.

슬라이드 1

Microsoft PowerPoint - gnu-w09-c-chap

학습목차 2.1 다차원배열이란 차원배열의주소와값의참조

PowerPoint 프레젠테이션

0. 표지에이름과학번을적으시오. (6) 1. 변수 x, y 가 integer type 이라가정하고다음빈칸에 x 와 y 의계산결과값을적으시오. (5) x = (3 + 7) * 6; x = 60 x = (12 + 6) / 2 * 3; x = 27 x = 3 * (8 / 4

[ 마이크로프로세서 1] 2 주차 3 차시. 포인터와구조체 2 주차 3 차시포인터와구조체 학습목표 1. C 언어에서가장어려운포인터와구조체를설명할수있다. 2. Call By Value 와 Call By Reference 를구분할수있다. 학습내용 1 : 함수 (Functi

Microsoft PowerPoint - Perpect C 02.ppt [호환 모드]

Microsoft PowerPoint - chap04-연산자.pptx

PowerPoint 프레젠테이션

C언어 및 실습 C Language and Practice

<4D F736F F F696E74202D20B8AEB4AABDBA20BFC0B7F920C3B3B8AEC7CFB1E22E BC8A3C8AF20B8F0B5E55D>

PowerPoint 프레젠테이션

PowerPoint Presentation

슬라이드 1

Microsoft PowerPoint - 08-C-App-19-Quick-Preprocessor

SaaS 플랫폼을 위한 Web 2.0기반 서비스 제공 미들웨어 기술 연구

Microsoft PowerPoint - ch07 - 포인터 pm0415

Microsoft PowerPoint - chap03-변수와데이터형.pptx

목차 윈도우드라이버 1. 매뉴얼안내 운영체제 (OS) 환경 윈도우드라이버준비 윈도우드라이버설치 Windows XP/Server 2003 에서설치 Serial 또는 Parallel 포트의경우.

본 강의에 들어가기 전

Chapter_06

1 장 C 언어복습 표준입출력배열포인터배열과포인터함수 const와포인터구조체컴파일러사용방법 C++ 프로그래밍입문

PowerPoint 프레젠테이션

Microsoft PowerPoint - chap4_2013 [호환 모드]

Microsoft PowerPoint - chap-06.pptx

Microsoft PowerPoint - CP_02_Convert_To_C_02_Step.pptx

Microsoft PowerPoint - gnu-w10-c-chap11

슬라이드 1

Microsoft Word - 3부A windows 환경 IVF + visual studio.doc

4S 1차년도 평가 발표자료

PowerPoint 프레젠테이션

PowerPoint 프레젠테이션

Microsoft PowerPoint - 7장 배열 pptx

Microsoft PowerPoint - chap05-제어문.pptx

슬라이드 1

Microsoft PowerPoint - 3ÀÏ°_º¯¼ö¿Í »ó¼ö.ppt

Microsoft PowerPoint - C프로그래밍-chap03.ppt [호환 모드]

쉽게 풀어쓴 C 프로그래밍

Microsoft PowerPoint - 2장 변수와 자료형 pptx

JAVA 프로그래밍실습 실습 1) 실습목표 - 메소드개념이해하기 - 매개변수이해하기 - 새메소드만들기 - Math 클래스의기존메소드이용하기 ( ) 문제 - 직사각형모양의땅이있다. 이땅의둘레, 면적과대각

Microsoft PowerPoint - 10장 문자열 pptx

Microsoft PowerPoint - chap12-고급기능.pptx

<4D F736F F F696E74202D2034C5D8BDBAC6AEC6C4C0CFC0D4C3E2B7C2312E505054>

1 부. OJ 시스템사용법 1. 회원가입및로그인 1) 접속후메인화면의우측상단 Sign up 선택 - 학번 (Student ID), 비밀번호, 비밀번호확인, 이름, 입력후 Register 버튼클릭 2) 메인화면에

금오공대 컴퓨터공학전공 강의자료

<4D F736F F F696E74202D20B8B6C0CCC5A9B7CEC7C1B7CEBCBCBCAD202839C1D6C2F7207E203135C1D6C2F >

Microsoft PowerPoint - chap08-1 [호환 모드]

버퍼오버플로우-왕기초편 10. 메모리를 Hex dump 뜨기 앞서우리는버퍼오버플로우로인해리턴어드레스 (return address) 가변조될수있음을알았습니다. 이제곧리턴어드레스를원하는값으로변경하는실습을해볼것인데요, 그전에앞서, 메모리에저장된값들을살펴보는방법에대해배워보겠습

Microsoft PowerPoint - Java7.pptx

Microsoft PowerPoint - ch09 - 연결형리스트, Stack, Queue와 응용 pm0100

Transcription:

C 프로그래밍및실습 1. C 프로그래밍시작하기 세종대학교 목차 1) 프로그래밍개요 3) 첫프로그램분석 4) 출력기초 5) 입력기초 2

1) 프로그래밍개요 프로그램과프로그래밍 프로그램 운동회의순서나음악회의연주곡목순서등미리짜놓은것 예 ) TV 프로그램 컴퓨터프로그램 (program) 컴퓨터에게해야할일의순서와방법을지시하는명령어의집합 프로그래밍 프로그래밍언어를이용하여프로그램을만드는행위 3 1) 프로그래밍개요 프로그래밍언어와 C 언어 프로그래밍언어 기계어 : 컴퓨터가이해할수있는언어로 0 과 1 의이진코드로구성 어셈블리어 : 기계어의명령어를사람이이해할수있는단어로일대일로대응시킨언어 고급언어 : 사람의사고체계에적합하게만들어진언어 C 언어, C++, C#, Java, Python 등 C 언어 1970 년대에개발된프로그래밍언어로, Unix 운영체제개발에활용 현재까지도많이활용되는언어 4

1) 프로그래밍개요 C 언어의장단점 이식성이높다 ( C is a highly portable language). 구조화된프로그래밍언어이다. 하드웨어의미세한조정까지가능하다. 고급및저급수준의특징을동시에포함하고있다. 저급수준의특징을가지다보니타고급언어에비해서프로그램이해가어렵다 자유도가높다 ( 장점이자단점 ) 5 1) 프로그래밍개요 컴퓨터시스템 6

1) 프로그래밍개요 비트와바이트 컴퓨터에서처리되는정보는기본적으로 0과 1로구성된이진수로표현 비트 (bit): 한자리이진수로표현되는정보단위 바이트 (byte): 8개의비트를묶은정보단위 ( 1 바이트 = 8 비트 ) 1 바이트는 2 8 = 256 개의상태표현가능 7 1) 프로그래밍개요 분석 설계 소프트웨어개발과정 소프트웨어시스템을개발하는설계자들은 개발단계를따름 요구사항을분석한후프로그램을설계 구현 프로그램을읽기쉽고바꾸기쉽게 설계하지않으면프로그램을개선하거나 테스트 추가하기가어려움 요구사항을분석하여테스트절차서작성 관리및개선 8

목차 1) 프로그래밍개요 3) 첫프로그램분석 4) 출력기초 5) 입력기초 9 C 프로그램이만들어지는과정 소스파일 : 컴퓨터가수행해야할일을명세한텍스트파일 오브젝트파일 : 소스파일을기계어로번역된것 라이브러리파일 : 널리사용되는기능을미리구현해놓은파일 실행파일 : 오브젝트, 라이브러리, 시동코드를결합한것 컴파일 : 소스파일을기계어로변환하는것 라이브러리파일 소스파일 test.c 컴파일러 오브젝트파일 test.obj 링커 실행파일 test.exe 10

Visual Studio (VS) MS 사의통합개발환경 (IDE, 프로그램개발에관련된모든작업을처리하는환경 ) C 언어뿐만아니라, C++, C# 등다른프로그래밍언어도지원 VS를이용한 C 프로그램개발단계 1. 프로젝트생성 2. 소스코드작성 3. 프로그램빌드 ( 실행파일생성 ) 4. 프로그램실행 ( 참고 ) 강의자료에서는 VS 2010 버전으로설명교재에는 VS 2017 버전에대한설명수록 11 1단계 프로젝트생성 (1) Visual Studio 실행후새프로젝트생성 파일 새로만들기 프로젝트 (Win32 선택 ) Win32 콘솔응용프로그램선택 프로젝트이름입력 12

1단계 프로젝트생성 (2) 마법사화면에서 다음 > 선택 콘솔응용프로그램선택, 빈프로젝트체크 마침 13 2단계 소스코드작성 (1) 소스파일생성하기 소스파일우클릭 추가 새항목 C++ 파일선택 ( 주의!! 반드시파일의확장명을.c 로한다 ) 파일확장자는반드시.c 로.. 14

2단계 소스코드작성 (2) VS 창구성 프로젝트정보 편집창 : 소스작성및편집 메시지창 : 컴파일에러및기타메시지를확인가능 15 2단계 소스코드작성 (3) 코드작성 : 편집창에코드를작성한다. 프로그램의시작과끝부분은앞으로계속나오니기억해두자 16

2단계 소스코드작성 (4) 소스코드 (hello.c) #include <stdio.h> int main() { printf("hello, World!!"); } return 0; 17 3 단계 프로그램빌드 (1) 빌드 메뉴 솔루션빌드 ( 단축키 : F7) 18

3단계 프로그램빌드 (2) 컴파일및빌드결과확인 메시지창에서오류를확인한후, 오류메시지를더블클릭하거나 F4 를누르면편집창의오류위치를가르킨다 19 4 단계 프로그램실행 (1) 디버그 메뉴 디버깅하지않고시작 ( 단축키 : Ctrl+F5) 20

4단계 프로그램실행 (2) 실행결과확인 : 프로그램의실행결과가새로운창에뜬다 이부분 ( 문구 ) 은내가작성한프로그램과는아무상관없는부분이다. 오잉? 이게프로그램? 내가생각하는컴퓨터프로그램이란? 한글, 엑셀, IE 21 소스파일의실체 소스파일 (.c) 는어떤파일일까?.hwp 파일을열기위해한글프로그램이필요했듯이,.c 파일을열기위해서는 Visual Studio가필요? NO!! 소스파일 (.c) 을메모장으로열어보자 잘열리는가? YES 소스파일 (.c) 은텍스트파일그이상도이하도아니다. 22

목차 1) 프로그래밍개요 3) 첫프로그램분석 4) 출력기초 5) 입력기초 23 3) 첫프로그램분석 나의첫 C 프로그램 (hello.c) 각라인의의미 표준입출력 (standard input output) 을포함 (include) 하라 main 함수 ( 프로그램시작지점 ) main 함수시작 ( 여는중괄호 ) #include <stdio.h> int main( ) { printf("hello, World!!"); 화면에 " " 부분을출력 (print) 하라 main 함수의끝 ( 닫는중괄호 ) } return 0; 일단은그대로쓰자 프로그램의각줄을하나씩지워보고빌드 & 실행해면서어떤결과가나오는지확인해보자 24

3) 첫프로그램분석 들여쓰기와주석 : 가독성을위한수단으로문법적의미는없음 들여쓰기 : 라인의포함여부를쉽게파악하기위함 주석 : 코드에추가된프로그램에대한설명 /* 나의첫 C 프로그램 Hello world program */ #include <stdio.h> // 헤더파일포함 int main( ) // main 함수 ( 프로그램시작지점 ) { // main 함수의시작 printf("hello, world!!"); // 화면에 " " 의내용을출력 return 0; // 0을반환 } // main 함수의끝들여쓰기와주석은선택이아니라필수!! 25 목차 1) 프로그래밍개요 3) 첫프로그램분석 4) 출력기초 5) 입력기초 26

4) 출력기초 화면에내용출력하기 printf() 함수는큰따옴표의시작과끝사이에있는내용출력 큰따옴표밖의공백은출력에전혀영향없고, 내부공백만출력에영향을줌 소스코드 실행화면 printf( "Hello, world!!" ); Hello, world!! printf( " I'm a student." ); I'm a student. printf( "100" ) ; 100 Printf( "!@#$" );!@#$ 27 4) 출력기초 printf 함수를여러번사용하면? C 언어의문장은기본적으로위에서부터순차적으로수행 #include<stdio.h> int main() { printf(" 한국대학교 "); printf(" 신입생 "); printf(" 홍길동 "); 순차실행 실행화면 한국대학교신입생홍길동 } return 0; 심화 1: 위내용을띄어쓰기를넣어서출력해보자. 심화 2: 위내용을 printf() 함수하나만사용해서출력해보자 28

4) 출력기초 앞의결과를오른쪽과같이 3 개의줄에출력하려면? 개행문자 (\n) 사용 참고 ) 역슬래쉬기호 (\) 는한글폰트에서는원화기호 (\) 로보임 실행화면 세종대학교신입생홍길동 printf(" 한국대학교 \n"); 29 4) 출력기초 정수값출력 printf("%d + %d", 10, 20); 10+20 실행화면 * %d 는정수형값을출력하는서식 '%d' 는해당위치에정수를출력하라는의미 ( 서식지정자 ) 출력할값은두번째큰따옴표뒤에명시 하나의 printf 함수에여러개의서식이삽입될수있으며, 문장앞쪽의서식부터차례로대응 30

4) 출력기초 [ 예제 1.1] 실습 다음프로그램의결과를예측해보고, 프로그램을작성하여결과를확인해보자. int main() { printf("100"); printf("\n"); printf("%d", 100); printf("\n"); return 0; } int main( ) { printf("100+200"); printf("\n"); printf("%d", 100+200); printf("\n"); return 0; } 31 4) 출력기초 변수에저장된값출력 변수에저장된값도동일한방식으로화면에출력 변수에대한자세한내용은 2장에서학습 int main() { int c; // 변수 c 선언 c = 10+20; // c 에 10+20 의결과, 즉 30 저장 } printf("c=10+20 출력 :"); // " " 내용출력 printf("%d", c); // 변수 c에저장된값출력 return 0; 32

목차 1) 프로그래밍개요 3) 첫프로그램분석 4) 출력기초 5) 입력기초 33 5) 입력기초 키보드를이용하여값입력받기 scanf( ) 함수는큰따옴표 " " 안에있는서식지정자에따라값을입력받음 int main() { int a; // 변수 a 선언 printf(" 정수를입력하시오 : "); // 안내문출력 scanf("%d", &a); // 정수값입력받아 // 변수 a에저장 printf(" 입력된값 : %d", a); // 변수 a의값출력 } return 0; 34

5) 입력기초 앞의프로그램을작성하여실행하면? 화면에 " 정수를입력하시오 : " 를출력한후, 프로그램은키보드로값이입력되길기다림 아무정수나입력하고 [Enter] 키를치면, 나머지부분이실행됨 실행화면 정수를입력하시오 : 15 입력된값 : 15 35 5) 입력기초 scanf() 함수사용법 scanf("%d", &a); 변수앞에 & 를반드시붙이자 키보드로입력된정수값을변수 a에저장 %d: 입력되는값을정수로해석하라는의미의서식지정자 printf 함수에서와달리, 변수 a 앞에 & 기호를붙여야한다. 이유는나중에 여러개의정수입력받기 scanf("%d%d", &a, &b); 36

5) 입력기초 [ 예제 1.2] 실습 ( 변수와 printf, scanf 를여러번사용 ) int main() { int id; int age; // 변수선언 printf(" 학번입력 : "); scanf("%d", &id); printf(" 입력학번 : %d\n", id); printf(" 나이입력 : "); scanf("%d", &age); printf(" 입력나이 : %d\n", age); 실행화면 학번입력 : 1601111 입력학번 : 1601111 나이입력 : 20 입력나이 : 20 // 안내문출력 // 값입력 // 입력된값출력 } return 0; 37 5) 입력기초 [ 예제 1.3] 실습 학번과나이를 scanf 함수를한번만사용하여입력받아다음과같은실행결과가나오도록프로그램을수정하시오. 실행화면 학번과나이입력 : 1601111 20 입력학번과나이 : 1601111 20 38

집에서 Visual Studio 설치방법 집에서 visual studio 를설치할수있습니다. ( 실습시간에이용한버전은 2012 버전입니다.) 1. https://www.visualstudio.com/ko 위링크로접속하여 windows 용 community 2017 을설치한다. (Windows 에 C++ 개발환경을선택 ) 이용방법 2. visual studio 를실행후파일 -> 새로만들기 -> 프로젝트 -> 콘솔응용프로그램선택 -> 저장위치선택 -> 빈프로젝트체크 3. 솔루션탐색기에서소스파일우클릭 -> 추가 -> 새항목을통해새파일을만들어준다.(crtl+shift+a) 39 클릭 40