PowerPoint 프레젠테이션

Size: px
Start display at page:

Download "PowerPoint 프레젠테이션"

Transcription

1 UNIX 및실습 13 장. 배시쉘프로그래밍

2 학습목표 다양한쉘변수를이해하고활용하는방법을익힌다 사용자로부터입력을받아스크립트파일에서처리하는방법을익힌다 다양한연산자와문자열테스트, 파일테스트를활용하는방법을익힌다 조건문과반복문의사용방법을익힌다 함수를이용해스크립트를작성하는방법을익힌다 스크립트의실행오류를찾아수정하는방법을익힌다 2

3 01. 쉘스크립트 스크립트? 인터프리터라불리는다른프로그램에의해실행되는프로그램 자바스크립트, Perl, 파이썬, 쉘스크립트 쉘이실행하는프로그램 유닉스명령 + 쉘이제공하는프로그램구성요소 쉘스크립트파일이름은키워드나앨리어스, 내장명령과같은이름을쓰지않는것이바람직함 쉘명령실행순서 : 앨리어스 키워드 (if, while, until 등 ) 함수 내장명령 (cd, echo 등 ) 스크립트, 유틸리트등 PATH 경로에있는실행가능한파일 3

4 쉘스크립트만들기 vi 에디터로편집 예 : test_script #!/bin/bash # My First Script Program print I love UNIX! pwd 4

5 쉘스크립트실행하기 스크립트실행방법 쉘을실행하면서인자로스크립트이름지정 ssh lily.mmu.ac.kr $ bash test_script I love UNIX! /home/user1/unix/ch13 $ 파일을직접실행 ssh lily.mmu.ac.kr $ chmod +x test_script $./test_script I love UNIX! /home/user1/unix/ch13 $ PATH 환경변수에현재디렉토리 (.) 가포함되어있지않으면./ 를꼭지정해야함!! 5

6 쉘스크립트종료하기 - exit exit [ 종료상태 ] 스크립트의종료 종료상태를 $? 변수에저장 사용예 : test_exit 스크립트가종료되는경우? 파일의마지막명령을실행 exit 문실행 #!/bin/bash #test_exit : exit 과 $? 를테스트하는프로그램 exit 20 텔넷 cookook.co.kr $ test_exit $ echo $? 20 $ 6

7 스크립트파일의구성요소 - #! 매직넘버 파일의가장처음에위치 스크립트를실행할프로그램지정 각쉘마다제공하는스크립트언어의문법이조금씩다르므로, 이스크립트를실행할쉘을지정해주어야올바로실행됨 쉘이아닌, 다른실행가능한명령을지정해주어도됨 예 : test_sharp #!/bin/more # test_sharp: 스스로를출력하는스크립트 # 이스크립트를시행시키면자기자신을화면에출력합니다. # 주석문도모두출력되지요. echo This line is printed. 7

8 스크립트파일의구성요소 - # 주석 (comment) 프로그램에대한설명 행전체, 또는행의일부를주석으로처리할수있음 예 : test_sharp2 #!/bin/rm # test_sharp2 : 자기자신을지우는스크립트 # 이스크립트를실행시키면이파일이지워집니다. WHATEVER=65 print 이부분은절대로출력되지않을겁니다. exit $WHATEVER # exit 문도실행되지않지요. 8

9 스크립트파일의구성요소 - 쉘명령 쉘이실행할수있는모든명령어사용가능 여러명령을반복수행해야할때스크립트파일로저장하여실행 예 : find_script #!/bin/bash # find_script : /bin, /usr/bin 에있는쉘스크립트검색 cd /bin file * grep script cd /usr/bin file * grep script ssh lily.mmu.ac.kr $./find_script 2to3: aalib-config: adrgen: afmtodit: ( 중략 ) xslt-config: zipgrep: $ executable /usr/bin/python2.6 script executable shell script executable /bin/ksh script executable /usr/bin/perl script executable shell script executable shell script 9

10 스크립트파일의구성요소 - 쉘프로그램 각쉘이제공하는프로그램을위한구문 쉘변수, 인자처리, 각종연산자, 제어문등포함 시스템이사용하는스크립트의예 : $ more /etc/rc2.d/s47pppd #!/usr/sbin/sh # # Copyright (c) 2000, 2011, Oracle and/or its affiliates. All rights reserved. # 시스템이부팅될때실행되는스크립트 PATH=/sbin:/usr/bin:/usr/sbin; export PATH PPPDIR=/etc/ppp; export PPPDIR case "$1" in 'start') --More--(10%) 10

11 02. 쉘변수사용하기 변수 : 프로그램에서처리하는다양한정보를저장하는곳 종류 쉘변수 ( 현재쉘에서만사용가능 ), 환경변수 ( 모든쉘에서사용가능 ) 지정방법 변수명 = 값 쉘변수표현식 : 을사용하지않으면널값을갖고있어도변수가정의된것으로간주 형식 $name $(name) ${name:-word} ${name:=word} ${name:+word} ${name:?word} 의미 name의값으로대체 name의값으로대치. 변수이름이다른구문과인접해있을때사용 name이정의되어있으면그값을, 그렇지않으면 word값사용 name이정의되지않았았거나, 널이라면 word를대입하고그값사용 name이정의되어있고, 그값이널이아니면 word 값을사용 name이정의되어있고널문자가아니면그값을사용한다. 그렇지않으면 word 출력후종료 11

12 쉘변수사용하기 - 사용예 ssh lily.mmu.ac.kr $ test=cookbook $ echo $test cookbook $ echo ${test:-word} cookbook $ echo ${test1:-word} word $ echo ${test:=word} cookbook $ echo ${test1:=word} word $ echo ${test1:=word1} word $ echo ${test:+word} word $ echo ${test:?word} cookbook $ ^test^test2 echo ${test2:?word} -bash: test2: word $ 12 1) test 변수에 cookbook" 문자열저장 2) test 변수값출력 3) test 변수가정의되어있으므로해당값 출력 4) tset1 변수가없으므로문자열 word 출력 5) test 변수가정의되어있으므로해당값출력 6) test1 변수가없으므로 word 를그값으로저장 7) tset1 변수가 6) 에서저장되어있으므로그값출력 8) test 변수가정의되어있으므로 word 출력 9) test 변수가정의되어있으므로해당값출력 10) tset2 변수가없으므로 word 출력후스크립트종료

13 쉘변수문자열처리 변수의값이문자열일때문자열내패턴을찾아일부분을제거하는표현식 2.x 이전의배시쉘에서는동작하지않음 표현식 ${vairable%pattern} ${variable%%pattern} ${variable#pattern} ${variable##pattern} 기능 variable 의뒤부터패턴과일치하는첫번째부분을찾아서제거 variable 값의뒤부터패턴과일치하는가장큰부분을찾아서제거 variable 값의앞부터패턴과일치하는첫번째부분을찾아서제거 variable 값의앞부터패턴과일치하는가장큰부분을찾아서제거 13

14 쉘변수문자열처리 - %, # 사용예 % : 뒤에서부터패턴과일치하는최소부분을제거 (%% 는최대부분 ) ssh lily.mmu.ac.kr $ path1="/usr/bin/local/bin" $ echo ${path1%/bin} /usr/bin/local $ echo ${path1%%/bin*} /usr $ %% 사용시지정한패턴이변수값중간에있다면, 패턴이후에임의의값이나올수있다는표시로 * 지정해야함! # : 앞에서부터패턴과일치하는최소부분을제거 (## 은최대부분 ) ssh lily.mmu.ac.kr $ path2= /home/user1/.profile" $ echo ${path2#/home} /usr1/.profile $ echo ${path2##*/}.profile $ ## 을사용할때는패턴앞에 * 지정!! 이예는경로에서파일명만추출할때사용 14

15 쉘변수문자열처리 - # 변수 사용예 # 변수 : 변수에저장된문자의개수출력 ssh lily.mmu.ac.kr $ echo ${#path1} 18 $ echo ${#path2} 20 $ 15

16 명령행인자처리 명령행인자 스크립트를실행할때인자로주어진값 위치매개변수 명령행인자를저장하는스크립트변수 인자의위치에따라이름이정해짐 명령행인자 의미 $0 쉘스크립트의이름 $1 - $9 명령행에주어진첫번째부터 9번째까지인자 $(10) 10번째인자 $# 전체인자개수 $* 모든인자 $@ $* 과같은의미 $* $1 $2 $3 $@" $1 $2 $3 $? 최근실행된명령의종료값 16

17 명령행인자처리 사용예 #!/bin/bash # test_position: 명령행인자를테스트 # echo $* : $* echo '$# : ' $# echo '$@ : ' $@ echo $1 $2 $3 set -- ssh lily.mmu.ac.kr $ chmod +x test_position $./test_position one twon three $* : one two three $# : 3 $@ : one two three one two three $ 17

18 쉘특수문자및명령처리 인용부호 : 쉘특수문자의의미를없애기위해사용 인용부호기능사용법 작은따옴표 ( ) 모든특수문자들이해석되는것을막음 $echo $test $test 큰따옴표 ( ) 변수나명령의대체만허용 $echo $test 100 역슬래시 (\) 단일문자가해석되는것을막음 $echo \$test $test 명령대체 : 명령실행결과를문자열로변환 기호 백쿼터 (` `) 사용법 $ echo `date` Sunday, April 15, :05:06 AM KST $( 명령 ) $ echo $(date) Sunday, April 15, :15:11 AM KST 18

19 사용자로부터입력받기 - read 쉘내장명령으로터미널이나파일로부터입력처리 사용형식 형식 의미 read x read first last read -p prompt 표준입력에서한행을입력받아 x 에저장 표준입력에서한행을입력받아첫번째단어를 first 에저장하고나머지모두를 last 에저장 prompt 를출력하고입력을기다린다. 입력된값은 REPLY 변수에저장 19

20 사용자로부터입력받기 - read 사용예 : test_read #!/bin/bash # 키보드입력처리를테스트하는스크립트 read x echo x : $x # 아무메시지없이사용자입력을기다림 # 사용자가임의의값을입력하면출력 read x y echo x is $x y is $y # 첫단어는 x, 나머지는 y 에저장 # x, y 값출력 read -p Input : echo input : $REPLY # Input : 을출력한후입력기다림 # $REPLY 에자동저장된입력값출력 20

21 문서를통한입력 - here 문서 표준입력을사용자로부터직접받아들이지않고자동처리 TERMINATOR 가입력될때까지기술된부분을키보드입력으로처리 키보드입력의종료문자로사용하는 EOF(^D) 문자를파일안에서사용할수없기때문에입력종료를나타내는문자열을지정하여사용 예 : test_here 명령 << TERMINATOR 입력내용 TERMINATOR #!/bin/bash # here 문서테스트. user1 에게메일을보냄 mail user1 << END This is a test mail for here document END 21

22 04. 연산자 프로그램에서자료를처리하는방법 산술연산자, 비교연산자, 논리연산자, 비트연산자제공 수치연산자사용시 let 또는 (( )) 사용해야함 연산자의미사용예 - 음수 ( 단항연산 ) -5! 논리부정 (not) ((! x < y )) ~ 비트반전 (not) ~y * / % 곱셈, 나눗셈, 나머지연산 let y=3 * 덧셈, 뺄셈 let x=x+1 << >> 비트왼쪽시프트, 비트오른쪽시프트 (( y = x << 3 )) <= >= < > ==!= 비교연산 (( x < y )) & ^ 비트 AND, XOR, OR 연산 let z = x ^ y && 논리 AND, OR (( x<y x==3 )) = 변수값지정 let z=1 *= /= %= += == <<= >>= &= ^= = 단축연산 let z+=1 22

23 사용예 ssh lily.mmu.ac.kr 연산자 $ a=5 $ echo $a 5 $ let a = > let 에서공백을사용못함 -bash: let: =: syntax error: operand expected (error token is "=") $ let a = > 공백을포함하려면 " " 사용해야함 $ print $a 20 $ (( a = 30 )) ----> (( )) 에서는공백사용가능 $ echo $a 30 $ a=$a*5 ----> let 이나 (( )) 을사용하지않으면문자열로처리 $ echo $a 30*5 $ echo $((5*6)) ----> 계산결과를바로출력할수있음 30 $ echo $((! * 4 )) ----> 우선순위에따라! 먼저수행. 2 는 0 이됨. 12 $ echo $(( 2 << 1 )) ----> 왼쪽 shift 는 *2 와같음. 2 번 shift 는 *4 4 $ echo $(( 3 ^ 5 )) ----> XOR 연산결과 6 $ 23

24 05. 제어문 프로그램내의문장실행순서를제어하는것 선택적실행문 프로그램실행문을조건에따라선택적으로실행 if, select 반복실행문 프로그램실행문을정해진횟수나조건에따라반복실행 while, do, for 순차적수행선택적수행반복수행 문장 1 문장 2 No(False) 조건문장 1 Yes(True) 문장 2 Yes(True) 조건문장 1 No(False) 문장 2 24

25 선택적실행문 - if~then~else 주어진조건의참, 거짓여부에따라명령실행 예 : test_if if 조건명령 then [ else fi 명령 명령 ] ssh lily.mmu.ac.kr $./test_if Input x : 100 Input y : 200 x is less then y $ 25 엄밀히말하면조건명령을실행하여그실행값이 0 이아닌값이면 then 다음의명령을실행하고, 0 이면 else 다음의명령을실행한다. #!/bin/bash # test_if : if 문을테스트하는스크립트 print -n Input x : read x # x 값을입력받음 print -n Input y : read y # y 값을입력받음 if (( x < y )) then echo x is less than y else echo y is less than x fi

26 선택적실행문 - if~then~elif ~ else 조건이실패일때새로운분기명령실행 예 : test_elif if 조건명령 1 then 명령 elif 조건명령 2 then else fi 명령 명령 ssh lily.mmu.ac.kr $./test_elif Input Score : 50 Your score is not good. $ #!/bin/bash # test_elif: if-elif 문테스트 print -n Input Score : read score if (( $score > 90 )) then echo Your score is great. elif (( $score >= 80 )) then echo Your score is good. else echo Your score is not good. fi 26

27 조건테스트 - 문자열연산자 조건명령에사용하는문자열연산자 내장명령 [[ ]] 사용 문자열연산자 string = pattern string == pattern string!= pattern string 동작 string이 pattern과일치. = 연산자양쪽에공백 string이 pattern과일치하지않음 string이널이아님 -z string string의길이가 0 -n string string의길이가 0이아님 -l string string의길이 27

28 조건테스트 - 문자열연산자 예 : test_string #!/bin/bash # test_string: 문자열테스트스크립트 print -n "Are you OK (y/n)? " read ans if [[ $ans = [Yy]* ]] then print Happy to hear it. else print That is too bad. fi # ans 변수에값저장 # y로시작하는문자열인가 # y로시작하면 # y로시작하지않으면 28

29 조건테스트 - test 플래그 파일관련테스트 test 플래그 기능 -a file 파일이존재 -e file 파일이존재 -L file 심볼릭링크파일 -O file 사용자가 file의소유자 -G file 파일의그룹 ID가스크립트의그룹 ID와같음 -S file 소켓파일 29

30 조건테스트 - test 플래그 test 플래그 -r file 읽기가능 기능 -w file 쓰기가능 -x file 실행가능 -b file 블록장치특수파일 -c file 문자장치특수파일 -d file 디렉토리파일 -p file 파이프파일 -u file setuid 권한부여파일 -g file setgid 권한부여파일 -k file sticky bit 접근권한부여파일 -s file 파일의크기가 0이아님 30

31 조건테스트 - test 플래그 예 : test_file #!/bin/bash # test_file: 파일연산자테스트 print -n " 파일이름을입력하세요 : " read file if [[ -G $file ]] then print 그룹 ID 가같습니다. else print 그룹 ID 가같지않습니다. fi if [[! -a $file ]] then print 파일이존재하지않습니다. 파일이름을다시확인하세요. elif [[ -f $file ]] then print 일반파일입니다. elif [[ -d $file ]] then print 디렉토리파일입니다. else print 특수파일입니다. fi 31 ssh lily.mmu.ac.kr $./test_file 파일이름을입력하세요 : /dev/null 그룹 ID 가같지않습니다. 특수파일입니다 $./test_file 파일이름을입력하세요 :. 그룹 ID 가같습니다. 디렉토리파일입니다. $./test_file 파일이름을입력하세요 : /etc/hosts 그룹 ID 가같지않습니다. 일반파일입니다. $

32 선택적실행문 - case 문 주어진변수의값에따라실행할명령따로지정 변수의값이 value1 이면 value1 부터 ;; 을만날때까지명령실행 값의지정에특수기호, (or 연산자 ) 사용가능 일치하는값이없으면기본값인 * 부터실행 case 변수 in value1) 명령 ;; value2) 명령 ;; *) 명령 ;; esac 32

33 선택적실행문 - case 문 예 : test_case #!/bin/bash # case 테스트스크립트 print -n 명령을선택하세요 : read cmd case $cmd in [0-9]) # 0부터 9까지임의의숫자 date ;; "cd" "CD") # cd 또는 CD print $HOME ;; [aa-c]*) pwd ;; *) print Usage : 명령을선택하세요 ;; esac ssh lily.mmu.ac.kr # 소문자 a, 대문자 A,B,C 로시작하는임의의문자열 33 $./test_case 명령을선택하세요 : 5 Sunday, August 19, :31: 35 AM KST $./test_case 명령을선택하세요 :cd /home/user1 $./test_case 명령을선택하세요 :a /home/user1/unix/ch13 $

34 반복실행문 - for 리스트안의각값들에대해지정한명령을순차실행 for 변수 in list do 명령 done Tip] list 대신 $(<file) 을사용하면외부파일의내용을입력으로받아서처리! 예 : test_for #!/bin/bash # test_for: for 테스트스크립트 for num in do print number is $num done ssh lily.mmu.ac.kr $ test_for number is 0 number is 1 number is 2 $ 34

35 반복실행문 - for 명령행인자처리가능 예 : test_for3 #!/bin/bash # test_for3: 명령행인자처리 for person in $* do mailx $person < letter print ${person} 에게메일을보냈습니다. done print print 모든메일을보냈습니다. ssh lily.mmu.ac.kr $./test_for3 user1 user2 user3 user1 에게메일을보냈습니다. user2 에게메일을보냈습니다. user3 에게메일을보냈습니다 모든메일을보냈습니다. $ 35

36 반복실행문 - while 조건명령이정상실행되는동안명령반복 while 조건명령 do done 명령 예 : test_while #!/bin/bash # test_while: while 을이용해 1 부터 10 까지합을구하는스크립트 count=1 sum=0 while (( count <= 10 )) do (( sum += count )) let count+=1 done print 1 부터 10 까지의합 : $sum ssh lily.mmu.ac.kr $ test _while 1 부터 10 까지의합 : 55 $ 36

37 반복실행문 - until 조건명령이정상실행될때까지명령반복 until 조건명령 do done 명령 예 : test_until ssh lily.mmu.ac.kr $./test_until 로그인이름 : hanb hanb pts/3 Aug 19 01:07 ( ) $ #!/bin/bash # test_until: 지정한사용자가로그인하면알리는스크립트 print -n 로그인이름 : " # 입력안내문출력 read person # 유저이름을 person에저장 until who grep $person # > /dev/null do sleep 5 # 유저가접속중이아니면 5초쉼 done print "\007" # beep. 삑소리를냄 37

38 반복실행문 - select 메뉴를생성할수있는반복실행문 list 에지정한항목을자동으로선택가능한메뉴로만들어화면에출력해줌 사용자는각항목에자동부여된번호를선택 사용자입력은 select 와 in 사이에지정된변수에저장 보통 case 문과결합하여입력값처리 select 변수 in list do done 명령 사용자입력값저장 일반적으로 case 문사용 자동메뉴생성목록 38

39 반복실행문 - select 예 : test_select ssh lily.mmu.ac.kr $ test _select 1) pwd 2) date 3) quit 명령을입력하세요 : 1 /export/home/user1/unix/ch13 1) pwd 2) date 3) quit 명령을입력하세요 : 3 $ #!/bin/bash # test_select: 사용자입력에따라 pwd,date 명령실행 PS3=" 명령을입력하세요 : " select cmd in pwd date quit do case $cmd in pwd) pwd ;; date) date;; quit) break;; *) print 잘못입력하셨습니다. 번호를선택하세요. ;; esac REPLY= done 39

40 루프제어문 - continue 루프안에서사용 이후실행순서를무시하고루프의처음으로돌아가는명령 숫자를지정하면중첩된루프안에서특정루프의처음으로돌아갈수있음 예 : test_cont #!/bin/bash # test_cont: continue 테스트 for person in $(< list) # `cat list`와동일 do if [[ $person == user2 ]] then continue # user2 이면건너뜀 fi mailx -s continue test $person < letter print ${person} 에게메일을보냈습니다. done print print 모든메일을보냈습니다. 40

41 06. 함수 함수 : 하나의목적으로사용되는명령들의집합 앨리어스와의차이점 조건에따라처리가능 function 함수이름 인자처리가능 { 명령들 } 예 : trash ssh lily.mmu.ac.kr $ mkdir ~/.TRASH $ function trash { > mv $* ~/.TRASH > } $ 41

42 함수확인및호출 정의된함수확인 ssh lily.mmu.ac.kr $ typeset -f trash() { mv $* ~/.TRASH } $ 함수호출 ssh lily.mmu.ac.kr $ touch a b c $ ls a b c $ trash a b c $ ls $ ls ~/.TRASH a b c $ 42

43 함수종료조건 함수의종료 - return 함수본문안의마지막문장실행 return 문실행 return [ n ] 지정한값이함수의종료값으로 $? 에저장됨 43

44 예 : test_add #!/bin/bash # 함수리턴값테스트 function sum { typeset sum 함수의종료 - return } (( sum= $1 + $2 )) return $sum sum $1 $2 print $1 + $2 = $? ssh lily.mmu.ac.kr $ add = 7 $ 44

45 함수삭제 - unset unset -f 함수명 정의된함수를삭제 사용예 ssh lily.mmu.ac.kr $ unset -f trash $ functions $ 45

46 07. 디버깅 스크립트실행도중발생한오류수정방법 구문오류 쉘이실행도중구문오류가발생한라인번호출력 실행오류 오류메시지없이실행이안되거나비정상종료 오류수정방법 bash -x, trap 46

47 디버깅 : bash -x 가장간단한스크립트실행오류수정방법 스크립트의각행이실행될때마다화면에출력됨 ssh lily.mmu.ac.kr $ bash -x test_while + count=1 + sum=0 + (( count <= 10 )) + (( sum+=count )) + let count+=1 + (( count <= 10 )) + (( sum+=count )) + let count+=1 + (( count <= 10 )) ( 중략 ) + print 1 부터 10 까지의합 : 55 1 부터 10 까지의합 : 55 $ 47 스크립트의내용

48 디버깅 : trap 지정한시그널이스크립트로전달될때마다지정한명령실행 스크립트의명령이한줄씩실행될때마다 DEBUG 시그널이스크립트로전달됨 DEBUG 시그널을받을때마다원하는변수값출력가능 trap 명령시그널 스크립트가실행되는도중변수값확인 48

49 예 : test_trap #!/bin/bash # test_trap: trap 테스트스크립트 디버깅 : trap trap print $LINENO : count=$count DEBUG count=1 sum=0 while (( count <= 10 )) do (( sum += count )) let count+=1 done print 1 부터 10 까지의합 : $sum ssh lily.mmu.ac.kr $./test_trap 6 : count= 7 : count=1 9 : count=1 11 : count=2 12 : count=2 ( 중략 ) 9 : count=11 15 : count=11 1 부터 10 까지의합 : 55 $ 49

50 13 장요약 [1/3] 쉘스크립트개요 쉘이제공하는프로그래밍구문과유닉스명령으로구성된텍스트파일 실행방법 : $ bash script 또는 $chmod +x script $ script 쉘변수사용하기 변수정의 : 변수명 = 값 다양한변수표현방법, 변수문자열처리방법이있음 명령행인자는위치매개변수를이용하여처리 ($0, $1,..) 사용자입력처리 키보드입력처리 : read 스크립트에서입력처리 : here 문서 연산자 산술, 비교, 논리, 비트연산지제공 사용방법 : let 다음또는 (( )) 안에연산식기술 50

51 13 장요약 [2/3] 조건문 반복문 함수 if 문 : if 다음의명령을실행한종료값이 0 이면 then 다음을, 0 이아닌값이면 else 다음을실행 case 문 : 변수의값에따라선택적으로명령실행 for 문 : 리스트에있는값을순차적으로변수에저장하여명령실행 while 문 : 조건명령이성공인동안명령반복실행 until 문 : 조건명령이실패인동안명령반복실행 select 문 : 선택가능한메뉴를생성하는반복문. 선택에따른동작을지정하려면 case 문과함께사용해야 하나의이름으로실행할수있는명령의집합으로인자전달가능 함수정의 : $ function foo { date; cal; } 함수호출 : $ foo 함수삭제 : $ unset -f foo 51

52 디버깅 13 장요약 [3/3] 스크립트의실행오류수정방법 bash -x script : 지정한 script 를한행씩실행하며결과를화면에출력 trap 명령 DEBUG : trap 을포함한스크립트를한행씩실행할때마다 trap 안에기술한명령을실행 52

PowerPoint 프레젠테이션

PowerPoint 프레젠테이션 UNIX 및실습 13 장. 콘쉘프로그래밍 1 학습목표 다양한쉘변수를이해하고활용하는방법을익힌다. 스크립트파일안에서사용자입력을받아처리하는방법을익힌다. 산술, 비교, 논리, 비트연산자와문자열테스트, 파일테스트를활용하는방법을익힌다. 조건문과반복문의사용방법을익힌다. 함수를이용해스크립트를작성하는방법을익힌다. 스크립트의실행오류를찾아서수정하는방법을익힌다. 2 Section

More information

10 강. 쉘스크립트 l 쉘스크립트 Ÿ 쉘은명령어들을연속적으로실행하는인터프리터환경을제공 Ÿ 쉘스크립트는제어문과변수선언등이가능하며프로그래밍언어와유사 Ÿ 프로그래밍언어와스크립트언어 -프로그래밍언어를사용하는경우소스코드를컴파일하여실행가능한파일로만들어야함 -일반적으로실행파일은다

10 강. 쉘스크립트 l 쉘스크립트 Ÿ 쉘은명령어들을연속적으로실행하는인터프리터환경을제공 Ÿ 쉘스크립트는제어문과변수선언등이가능하며프로그래밍언어와유사 Ÿ 프로그래밍언어와스크립트언어 -프로그래밍언어를사용하는경우소스코드를컴파일하여실행가능한파일로만들어야함 -일반적으로실행파일은다 10 강. 쉘스크립트 쉘스크립트 쉘은명령어들을연속적으로실행하는인터프리터환경을제공 쉘스크립트는제어문과변수선언등이가능하며프로그래밍언어와유사 프로그래밍언어와스크립트언어 -프로그래밍언어를사용하는경우소스코드를컴파일하여실행가능한파일로만들어야함 -일반적으로실행파일은다른운영체제로이식되지않음 -스크립트언어를사용하면컴파일과정이없고인터프리터가소스파일에서명령문을판독하여각각의명령을수행

More information

Microsoft PowerPoint - 02-Shell-Programming

Microsoft PowerPoint - 02-Shell-Programming 2. 쉘프로그래밍 상명대학교소프트웨어학부 쉘 (Shell) 쉘 : 명령어해석기 단말기나파일로부터입력된명령을해석하여적절한명령을실행 시스템환경변경, 명령어입력편의를제공 쉘의종류 Bourne Shell(sh) /bin/sh Korn Shell(ksh) /bin/ksh C Shell(csh) /bin/csh Bourne Again Shell(bash) /bin/bash

More information

Microsoft Word - Lab_080104A.docx

Microsoft Word - Lab_080104A.docx BASH Shell Script 3rd Lab 1. 쉘스크립트 간단한쉘스크립트 $ vi hello.sh (hello.sh) echo hello world $ chmod 755 hello.sh $./hello.sh hello world #! 은쉘에게이프로그램을실행하기위해서 #! 다음에오는아규먼트를실행프로그램으로사용한다는것을알려주기위해서사용된다. Unix/Linux

More information

Microsoft PowerPoint UNIX Shell.ppt

Microsoft PowerPoint UNIX Shell.ppt 컴퓨터특강 () 2006 년봄학기 문양세강원대학교컴퓨터과학과 Shell? Shell이란명령어해석기 (Command Processor or Command Interpreter): 사용자가입력하는명령을읽고해석하는프로그램프로그래밍언어 : Shell이해석할수있는스크립트 (shell script) 라는프로그램을작성유닉스를사용하는데있어주요한인터페이스 Page 2 1 Shell

More information

OCW_C언어 기초

OCW_C언어 기초 초보프로그래머를위한 C 언어기초 4 장 : 연산자 2012 년 이은주 학습목표 수식의개념과연산자및피연산자에대한학습 C 의알아보기 연산자의우선순위와결합방향에대하여알아보기 2 목차 연산자의기본개념 수식 연산자와피연산자 산술연산자 / 증감연산자 관계연산자 / 논리연산자 비트연산자 / 대입연산자연산자의우선순위와결합방향 조건연산자 / 형변환연산자 연산자의우선순위 연산자의결합방향

More information

Microsoft PowerPoint UNIX Shell.pptx

Microsoft PowerPoint UNIX Shell.pptx UNIX SHELL 문양세강원대학교 IT 특성화대학컴퓨터과학전공 Shell? Shell 이란명령어해석기 (Command Processor or Command Interpreter): 사용자가입력하는명령을읽고해석하는프로그램 프로그래밍언어 : Shell 이해석할수있는스크립트 (shell script) 라는프로그램을작성 유닉스를사용하는데있어주요한인터페이스 Page

More information

PowerPoint 프레젠테이션

PowerPoint 프레젠테이션 실습 1 배효철 th1g@nate.com 1 목차 조건문 반복문 System.out 구구단 모양만들기 Up & Down 2 조건문 조건문의종류 If, switch If 문 조건식결과따라중괄호 { 블록을실행할지여부결정할때사용 조건식 true 또는 false값을산출할수있는연산식 boolean 변수 조건식이 true이면블록실행하고 false 이면블록실행하지않음 3

More information

<4D F736F F F696E74202D20BFEEBFB5C3BCC1A6BDC7BDC D31C7D0B1E229202D20BDA92E BC8A3C8AF20B8F0B5E55D>

<4D F736F F F696E74202D20BFEEBFB5C3BCC1A6BDC7BDC D31C7D0B1E229202D20BDA92E BC8A3C8AF20B8F0B5E55D> 쉘 (Shell) 환경 운영체제실습 목차 Ⅴ. 쉘 (shell) 환경 5.1 쉘 (shell) 이란? 5.2 쉘 (shell) 기능 5.3 쉘 (shell) 변수 5.4 기타기능 5.5 쉘 (shell) 프로그래밍 5.1 쉘 (shell) 이란? 쉘 (Shell) 사용자가입력한명령어를해석해주는명령어해석기 (Command interpreter) 사용자와운영체제

More information

윈도우즈프로그래밍(1)

윈도우즈프로그래밍(1) 제어문 (2) For~Next 문 윈도우즈프로그래밍 (1) ( 신흥대학교컴퓨터정보계열 ) 2/17 Contents 학습목표 프로그램에서주어진특정문장을부분을일정횟수만큼반복해서실행하는문장으로 For~Next 문등의구조를이해하고활용할수있다. 내용 For~Next 문 다중 For 문 3/17 제어문 - FOR 문 반복문 : 프로그램에서주어진특정문장들을일정한횟수만큼반복해서실행하는문장

More information

< E20C6DFBFFEBEEE20C0DBBCBAC0BB20C0A7C7D12043BEF0BEEE20492E707074>

< E20C6DFBFFEBEEE20C0DBBCBAC0BB20C0A7C7D12043BEF0BEEE20492E707074> Chap #2 펌웨어작성을위한 C 언어 I http://www.smartdisplay.co.kr 강의계획 Chap1. 강의계획및디지털논리이론 Chap2. 펌웨어작성을위한 C 언어 I Chap3. 펌웨어작성을위한 C 언어 II Chap4. AT89S52 메모리구조 Chap5. SD-52 보드구성과코드메모리프로그래밍방법 Chap6. 어드레스디코딩 ( 매핑 ) 과어셈블리어코딩방법

More information

PowerPoint 프레젠테이션

PowerPoint 프레젠테이션 Lecture 02 프로그램구조및문법 Kwang-Man Ko kkmam@sangji.ac.kr, compiler.sangji.ac.kr Department of Computer Engineering Sang Ji University 2018 자바프로그램기본구조 Hello 프로그램구조 sec01/hello.java 2/40 자바프로그램기본구조 Hello 프로그램구조

More information

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

비트와바이트 비트와바이트 비트 (Bit) : 2진수값하나 (0 또는 1) 를저장할수있는최소메모리공간 1비트 2비트 3비트... n비트 2^1 = 2개 2^2 = 4개 2^3 = 8개... 2^n 개 1 바이트는 8 비트 2 2 비트연산자 1 1 비트와바이트 비트와바이트 비트 (Bit) : 2진수값하나 (0 또는 1) 를저장할수있는최소메모리공간 1비트 2비트 3비트... n비트 2^1 = 2개 2^2 = 4개 2^3 = 8개... 2^n 개 1 바이트는 8 비트 2 2 진수법! 2, 10, 16, 8! 2 : 0~1 ( )! 10 : 0~9 ( )! 16 : 0~9, 9 a, b,

More information

Linux SHELL

Linux SHELL Linux SHELL SHELL? 리눅스는크게커널, 쉘, 사용자프로그램으로분류 커널은운영체제의핵심으로서메모리나프로세서등을관리하며시스템을제어하는역할을함 사용자프로그램은일반적으로사용하는 SSH, FTP, HTTP 등의프로그램등을말함 쉘은커널과직접적으로연결되어사용자가프로그램에서실행시킨명령어를해석하여그결과를커널로보내는역할을함 ( 명령어해석기 ) 다양한종류가있으며사용자의활용도와사용목적에따라각각에맞는쉘을선택해서사용할수있음

More information

Microsoft PowerPoint - chap05-제어문.pptx

Microsoft PowerPoint - chap05-제어문.pptx int num; printf( Please enter an integer: "); scanf("%d", &num); if ( num < 0 ) printf("is negative.\n"); printf("num = %d\n", num); 1 학습목표 제어문인,, 분기문에 대해 알아본다. 인 if와 switch의 사용 방법과 사용시 주의사항에 대해 알아본다.

More information

ksh프로그램문법.ppt

ksh프로그램문법.ppt http://www.suntraining.co.kr Korn shell programming yae_kim@suned.co.kr 썬교육사업부 Sun Microsystems Korea Sun Microsystems 교육입과를환영합니다 Korn shell 프로그래밍과정진행과정 OBEJCT - UNIX shell 특징과 shell script 소개 - UNIX 기본명령어

More information

Microsoft PowerPoint - chap04-연산자.pptx

Microsoft PowerPoint - chap04-연산자.pptx int num; printf( Please enter an integer: "); scanf("%d", &num); if ( num < 0 ) printf("is negative.\n"); printf("num = %d\n", num); } 1 학습목표 수식의 개념과 연산자, 피연산자에 대해서 알아본다. C의 를 알아본다. 연산자의 우선 순위와 결합 방향에

More information

Chapter_06

Chapter_06 프로그래밍 1 1 Chapter 6. Functions and Program Structure April, 2016 Dept. of software Dankook University http://embedded.dankook.ac.kr/~baeksj 이장의강의목표 2 문자의입력방법을이해한다. 중첩된 if문을이해한다. while 반복문의사용법을익힌다. do 반복문의사용법을익힌다.

More information

[ 컴퓨터시스템 ] 3 주차 1 차시. 디렉토리사이의이동 3 주차 1 차시디렉토리사이의이동 학습목표 1. pwd 명령을사용하여현재디렉토리를확인할수있다. 2. cd 명령을사용하여다른디렉토리로이동할수있다. 3. ls 명령을사용하여디렉토리내의파일목록을옵션에따라다양하게확인할수

[ 컴퓨터시스템 ] 3 주차 1 차시. 디렉토리사이의이동 3 주차 1 차시디렉토리사이의이동 학습목표 1. pwd 명령을사용하여현재디렉토리를확인할수있다. 2. cd 명령을사용하여다른디렉토리로이동할수있다. 3. ls 명령을사용하여디렉토리내의파일목록을옵션에따라다양하게확인할수 3 주차 1 차시디렉토리사이의이동 학습목표 1. pwd 명령을사용하여현재디렉토리를확인할수있다. 2. cd 명령을사용하여다른디렉토리로이동할수있다. 3. ls 명령을사용하여디렉토리내의파일목록을옵션에따라다양하게확인할수있다. 학습내용 1 : 현재디렉토리확인 1. 홈디렉토리 - 로그인을한후, 사용자가기본으로놓이게되는디렉토리위치를홈디렉토리 (home directory)

More information

슬라이드 1

슬라이드 1 Pairwise Tool & Pairwise Test NuSRS 200511305 김성규 200511306 김성훈 200614164 김효석 200611124 유성배 200518036 곡진화 2 PICT Pairwise Tool - PICT Microsoft 의 Command-line 기반의 Free Software www.pairwise.org 에서다운로드후설치

More information

Microsoft PowerPoint - comp_prac_081223_2.pptx

Microsoft PowerPoint - comp_prac_081223_2.pptx Computer Programming Practice (2008 Winter) Practice 2 기본 Unix/Linux 명령어숙지 2008. 12. 23 Contents Linux commands Basic commands File and Directory User Data Filtering Process Etc Conclusion & Recommended

More information

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

Microsoft PowerPoint - chap02-C프로그램시작하기.pptx #include int main(void) { int num; printf( Please enter an integer "); scanf("%d", &num); if ( num < 0 ) printf("is negative.\n"); printf("num = %d\n", num); return 0; } 1 학습목표 을 작성하면서 C 프로그램의

More information

Visual Basic 반복문

Visual Basic 반복문 학습목표 반복문 For Next문, For Each Next문 Do Loop문, While End While문 구구단작성기로익히는반복문 2 5.1 반복문 5.2 구구단작성기로익히는반복문 3 반복문 주어진조건이만족하는동안또는주어진조건이만족할때까지일정구간의실행문을반복하기위해사용 For Next For Each Next Do Loop While Wend 4 For

More information

Infinity(∞) Strategy

Infinity(∞) Strategy 반복제어 표월성 passwd74@cherub.sungkyul.edu 개요 for() 문 break문과 continue문 while문 do-while문 for() 문 for() 문형식 for( 표현식1; 표현식2; 표현식3) 여러문장들 ; 표현식 1 : 초기화 (1 번만수행 ) 표현식 2 : 반복문수행조건 ( 없으면무한반복 ) 표현식 3 : 반복문수행횟수 for()

More information

Microsoft PowerPoint - Java7.pptx

Microsoft PowerPoint - Java7.pptx HPC & OT Lab. 1 HPC & OT Lab. 2 실습 7 주차 Jin-Ho, Jang M.S. Hanyang Univ. HPC&OT Lab. jinhoyo@nate.com HPC & OT Lab. 3 Component Structure 객체 (object) 생성개념을이해한다. 외부클래스에대한접근방법을이해한다. 접근제어자 (public & private)

More information

PowerPoint 프레젠테이션

PowerPoint 프레젠테이션 UNIX 및실습 5 장. Bash 활용하기 학습목표 5 장. Bash 활용하기 Bash 쉘이제공하는다양한기능을이해하고활용한다. 환경변수를이용해작업의효율을높이는환경을설정하는방법을익힌다. 환경설정파일을이용해자신만의환경을설정하는방법을익힌다. 2 Section 03 Bash 쉘환경설정 변수 시스템이나사용자에의해사용되는정보를저장하기위한저장소 쉘변수는관례적으로대문자를사용

More information

PowerPoint 프레젠테이션

PowerPoint 프레젠테이션 UNIX 및실습 6 장. 파일접근권한관리하기 1 6 장. 파일접근권한관리하기 학습목표 파일의속성과접근권한의개념을이해한다. 접근권한을변경하는방법을익힌다. 접근권한을상속하고초기에설정하는방법을익힌다. 2 01. 파일의속성 다중사용자시스템의특징 여러사람이하나의시스템사용 다른사람이내파일을읽거나수정, 삭제할수없도록보안기능필요 다른사용자의무단접근으로부터자신의파일을보호하는기능으로파일에접근권한을부여하여권한만큼만파일을사용하도록함

More information

/chroot/lib/ /chroot/etc/

/chroot/lib/ /chroot/etc/ 구축 환경 VirtualBox - Fedora 15 (kernel : 2.6.40.4-5.fc15.i686.PAE) 작동 원리 chroot유저 ssh 접속 -> 접속유저의 홈디렉토리 밑.ssh의 rc 파일 실행 -> daemonstart실행 -> daemon 작동 -> 접속 유저만의 Jail 디렉토리 생성 -> 접속 유저의.bashrc 의 chroot 명령어

More information

Microsoft PowerPoint - 게시물2 - unix07.ppt [호환 모드]

Microsoft PowerPoint - 게시물2 - unix07.ppt [호환 모드] 제어구조 쉘에서사용되는제어구조 if,while,case,switch,for 등다양 Chapter 7. 본쉘프로그래밍 (2) 쉘마다지원되는기능이조금씩다르다 7.1 쉘의제어구조 7.2 디버깅 2 if 문 if 다음의조건식이참 (true) 이면 뒤의명령어들을실행하라는의미 조건이비교될때결과값이 0 이면참으로인식 if [ 조건 ] 조건이참이면명령들을수행 if 문 $

More information

<4D F736F F F696E74202D20B8AEB4AABDBA20BFC0B7F920C3B3B8AEC7CFB1E22E BC8A3C8AF20B8F0B5E55D>

<4D F736F F F696E74202D20B8AEB4AABDBA20BFC0B7F920C3B3B8AEC7CFB1E22E BC8A3C8AF20B8F0B5E55D> 리눅스 오류처리하기 2007. 11. 28 안효창 라이브러리함수의오류번호얻기 errno 변수기능오류번호를저장한다. 기본형 extern int errno; 헤더파일 라이브러리함수호출에실패했을때함수예 정수값을반환하는함수 -1 반환 open 함수 포인터를반환하는함수 NULL 반환 fopen 함수 2 유닉스 / 리눅스 라이브러리함수의오류번호얻기 19-1

More information

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

Microsoft PowerPoint - 3ÀÏ°_º¯¼ö¿Í »ó¼ö.ppt 변수와상수 1 변수란무엇인가? 변수 : 정보 (data) 를저장하는컴퓨터내의특정위치 ( 임시저장공간 ) 메모리, register 메모리주소 101 번지 102 번지 변수의크기에따라 주로 byte 단위 메모리 2 기본적인변수형및변수의크기 변수의크기 해당컴퓨터에서는항상일정 컴퓨터마다다를수있음 short

More information

컴파일러

컴파일러 YACC 응용예 Desktop Calculator 7/23 Lex 입력 수식문법을위한 lex 입력 : calc.l %{ #include calc.tab.h" %} %% [0-9]+ return(number) [ \t] \n return(0) \+ return('+') \* return('*'). { printf("'%c': illegal character\n",

More information

Linux SHELL

Linux SHELL Linux SHELL SHELL? 리눅스는크게커널, 쉘, 사용자프로그램으로분류 커널은운영체제의핵심으로서메모리나프로세서등을관리하며시스템을제어하는역할을함 사용자프로그램은일반적으로사용하는 SSH, FTP, HTTP 등의프로그램등을말함 쉘은커널과직접적으로연결되어사용자가프로그램에서실행시킨명령어를해석하여그결과를커널로보내는역할을함 ( 명령어해석기 ) 다양한종류가있으며사용자의활용도와사용목적에따라각각에맞는쉘을선택해서사용할수있음

More information

쉽게

쉽게 Power Java 제 4 장자바프로그래밍기초 이번장에서학습할내용 자바프로그램에대한기초사항을학습 자세한내용들은추후에. Hello.java 프로그램 주석 주석 (comment): 프로그램에대한설명을적어넣은것 3 가지타입의주석 클래스 클래스 (class): 객체를만드는설계도 ( 추후에학습 ) 자바프로그램은클래스들로구성된다. 그림 4-1. 자바프로그램의구조 클래스정의

More information

Tcl의 문법

Tcl의 문법 월, 01/28/2008-20:50 admin 은 상당히 단순하고, 커맨드의 인자를 스페이스(공백)로 단락을 짓고 나열하는 정도입니다. command arg1 arg2 arg3... 한행에 여러개의 커맨드를 나열할때는, 세미콜론( ; )으로 구분을 짓습니다. command arg1 arg2 arg3... ; command arg1 arg2 arg3... 한행이

More information

Microsoft PowerPoint 웹 연동 기술.pptx

Microsoft PowerPoint 웹 연동 기술.pptx 웹프로그래밍및실습 ( g & Practice) 문양세강원대학교 IT 대학컴퓨터과학전공 URL 분석 (1/2) URL (Uniform Resource Locator) 프로토콜, 호스트, 포트, 경로, 비밀번호, User 등의정보를포함 예. http://kim:3759@www.hostname.com:80/doc/index.html URL 을속성별로분리하고자할경우

More information

Java ...

Java ... 컴퓨터언어 1 Java 제어문 조성일 조건문 : if, switch 어떠한조건을조사하여각기다른명령을실행 if 문, switch 문 if 문 if - else 문형식 if 문형식 if ( 조건식 ) { 명령문 1; 명령문 2;... if ( 조건식 ) { 명령문 1; 명령문 2;... else { 명령문 a; 명령문 b;... 예제 1 정수를입력받아짝수와홀수를판별하는프로그램을작성하시오.

More information

Microsoft PowerPoint 세션.ppt

Microsoft PowerPoint 세션.ppt 웹프로그래밍 () 2006 년봄학기 문양세강원대학교컴퓨터과학과 세션변수 (Session Variable) (1/2) 쇼핑몰장바구니 장바구니에서는사용자가페이지를이동하더라도장바구니의구매물품리스트의내용을유지하고있어야함 PHP 에서사용하는일반적인변수는스크립트의수행이끝나면모두없어지기때문에페이지이동시변수의값을유지할수없음 이러한문제점을해결하기위해서 PHP 에서는세션 (session)

More information

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

JAVA 프로그래밍실습 실습 1) 실습목표 - 메소드개념이해하기 - 매개변수이해하기 - 새메소드만들기 - Math 클래스의기존메소드이용하기 (   ) 문제 - 직사각형모양의땅이있다. 이땅의둘레, 면적과대각 JAVA 프로그래밍실습 실습 1) 실습목표 - 메소드개념이해하기 - 매개변수이해하기 - 새메소드만들기 - Math 클래스의기존메소드이용하기 ( http://java.sun.com/javase/6/docs/api ) 문제 - 직사각형모양의땅이있다. 이땅의둘레, 면적과대각선의길이를계산하는메소드들을작성하라. 직사각형의가로와세로의길이는주어진다. 대각선의길이는 Math클래스의적절한메소드를이용하여구하라.

More information

PowerPoint 프레젠테이션

PowerPoint 프레젠테이션 Chapter 06 반복문 01 반복문의필요성 02 for문 03 while문 04 do~while문 05 기타제어문 반복문의의미와필요성을이해한다. 대표적인반복문인 for 문, while 문, do~while 문의작성법을 알아본다. 1.1 반복문의필요성 반복문 동일한내용을반복하거나일정한규칙으로반복하는일을수행할때사용 프로그램을좀더간결하고실제적으로작성할수있음.

More information

5장. JSP와 Servlet 프로그래밍을 위한 기본 문법(완성-0421).hwp

5장. JSP와 Servlet 프로그래밍을 위한 기본 문법(완성-0421).hwp 1 0 1.7 6 5 'A ' '/ u 4 4 2 2 ' " JS P 프로그래밍 " A ', 'b ', ' 한 ', 9, \ u d 6 5 4 ' c h a r a = 'A '; 0 1 0 2 0 3 0 4 0 5 0 6 0 7 0 8 0 9 1 0 1 1 1 2 1 3 1 4 1 5 1 6 1 7 1 8 1 9 < % @ p a g e c o n te n

More information

Microsoft PowerPoint - [2009] 02.pptx

Microsoft PowerPoint - [2009] 02.pptx 원시데이터유형과연산 원시데이터유형과연산 원시데이터유형과연산 숫자데이터유형 - 숫자데이터유형 원시데이터유형과연산 표준입출력함수 - printf 문 가장기본적인출력함수. (stdio.h) 문법 ) printf( Test printf. a = %d \n, a); printf( %d, %f, %c \n, a, b, c); #include #include

More information

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

프로그래밍개론및실습 2015 년 2 학기프로그래밍개론및실습과목으로본내용은강의교재인생능출판사, 두근두근 C 언어수업, 천인국지음을발췌수정하였음 프로그래밍개론및실습 2015 년 2 학기프로그래밍개론및실습과목으로본내용은강의교재인생능출판사, 두근두근 C 언어수업, 천인국지음을발췌수정하였음 CHAPTER 9 둘중하나선택하기 관계연산자 두개의피연산자를비교하는연산자 결과값은참 (1) 아니면거짓 (0) x == y x 와 y 의값이같은지비교한다. 관계연산자 연산자 의미 x == y x와 y가같은가? x!= y

More information

C 프로그래밍 언어 입문 C 프로그래밍 언어 입문 김명호저 숭실대학교 출판국 머리말..... C, C++, Java, Fortran, Python, Ruby,.. C. C 1972. 40 C.. C. 1999 C99. C99. C. C. C., kmh ssu.ac.kr.. ,. 2013 12 Contents 1장 프로그래밍 시작 1.1 C 10 1.2 12

More information

untitled

untitled 시스템소프트웨어 : 운영체제, 컴파일러, 어셈블러, 링커, 로더, 프로그래밍도구등 소프트웨어 응용소프트웨어 : 워드프로세서, 스프레드쉬트, 그래픽프로그램, 미디어재생기등 1 n ( x + x +... + ) 1 2 x n 00001111 10111111 01000101 11111000 00001111 10111111 01001101 11111000

More information

Multi-pass Sieve를 이용한 한국어 상호참조해결 반-자동 태깅 도구

Multi-pass Sieve를 이용한 한국어 상호참조해결 반-자동 태깅 도구 Python: 파이썬이란무엇인가? Kangwon Natl. University Department of Computer Science Cheoneum Park Intelligent software Lab. 파이썬이란? Python 1990년암스테르담의귀도반로섬 (Guido Van Rossum) 이개발한인터프리터언어 국내외에서교육, 실무등에서많이사용 구글의소프트웨어,

More information

Microsoft PowerPoint - chap-03.pptx

Microsoft PowerPoint - chap-03.pptx 쉽게풀어쓴 C 언어 Express 제 3 장 C 프로그램구성요소 컴퓨터프로그래밍기초 이번장에서학습할내용 * 주석 * 변수, 상수 * 함수 * 문장 * 출력함수 printf() * 입력함수 scanf() * 산술연산 * 대입연산 이번장에서는 C프로그램을이루는구성요소들을살펴봅니다. 컴퓨터프로그래밍기초 2 일반적인프로그램의형태 데이터를받아서 ( 입력단계 ), 데이터를처리한후에

More information

1 Shell script What the shell?

1 Shell script What the shell? Shell scripts & Cron 김건우 하정호 홍영규 1 Shell script What the shell? 컴퓨터 시스템의 구조 Kernel 어제 배웠죠? Shell... User... 사용자의 명령을 커널에 전달하는 역할 Shell script? 쉘이 실행할 수 있는 코드 Python script = Python이 실행할 수 있는 코드 컴파일 없이

More information

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

Microsoft PowerPoint - ch09 - 연결형리스트, Stack, Queue와 응용 pm0100 2015-1 프로그래밍언어 9. 연결형리스트, Stack, Queue 2015 년 5 월 4 일 교수김영탁 영남대학교공과대학정보통신공학과 (Tel : +82-53-810-2497; Fax : +82-53-810-4742 http://antl.yu.ac.kr/; E-mail : ytkim@yu.ac.kr) 연결리스트 (Linked List) 연결리스트연산 Stack

More information

예제 1.1 ( 관계연산자 ) >> A=1:9, B=9-A A = B = >> tf = A>4 % 4 보다큰 A 의원소들을찾을경우 tf = >> tf = (A==B) % A

예제 1.1 ( 관계연산자 ) >> A=1:9, B=9-A A = B = >> tf = A>4 % 4 보다큰 A 의원소들을찾을경우 tf = >> tf = (A==B) % A 예제 1.1 ( 관계연산자 ) >> A=1:9, B=9-A A = 1 2 3 4 5 6 7 8 9 B = 8 7 6 5 4 3 2 1 0 >> tf = A>4 % 4 보다큰 A 의원소들을찾을경우 tf = 0 0 0 0 1 1 1 1 1 >> tf = (A==B) % A 의원소와 B 의원소가똑같은경우를찾을때 tf = 0 0 0 0 0 0 0 0 0 >> tf

More information

쉽게 풀어쓴 C 프로그래밍

쉽게 풀어쓴 C 프로그래밍 제 3 장함수와문자열 1. 함수의기본적인개념을이해한다. 2. 인수와매개변수의개념을이해한다. 3. 함수의인수전달방법 2가지를이해한다 4. 중복함수를이해한다. 5. 디폴트매개변수를이해한다. 6. 문자열의구성을이해한다. 7. string 클래스의사용법을익힌다. 이번장에서만들어볼프로그램 함수란? 함수선언 함수호출 예제 #include using

More information

Microsoft PowerPoint - u5.pptx

Microsoft PowerPoint - u5.pptx 주요미리정의된변수의의미 PS1 1 차프롬프트문자열 명령어입력을기다리고있음을알려줌 특수한내용표시방법은 p108 표참조 PS1의기본값 : "[\u@\h \W]\$ " [gdhong@magics dir]$ $ PS1="[\W] $ "... 디렉토리이름만나타나게변경 PS2 2 차프롬프트문자열 명령어입력후 Enter를입력했을때에추가입력을기다림을알려줌 $ echo "Linux...

More information

PowerPoint 프레젠테이션

PowerPoint 프레젠테이션 UNIX 및실습 13 장보충 bash(1) 1 Bash bash(bourne Again Shell) 다양한내장명령과히스토리, 별명, 파일, 명령완성, 명령줄편집등지원 원래있던 Bourne Shell 에 GNU 프로젝트를통해추가된다양한기능들이많음 버전확인 [kgu@lily ~]$ bash --version GNU bash, version 4.2.37(1)-release

More information

다른 JSP 페이지호출 forward() 메서드 - 하나의 JSP 페이지실행이끝나고다른 JSP 페이지를호출할때사용한다. 예 ) <% RequestDispatcher dispatcher = request.getrequestdispatcher(" 실행할페이지.jsp");

다른 JSP 페이지호출 forward() 메서드 - 하나의 JSP 페이지실행이끝나고다른 JSP 페이지를호출할때사용한다. 예 ) <% RequestDispatcher dispatcher = request.getrequestdispatcher( 실행할페이지.jsp); 다른 JSP 페이지호출 forward() 메서드 - 하나의 JSP 페이지실행이끝나고다른 JSP 페이지를호출할때사용한다. 예 ) RequestDispatcher dispatcher = request.getrequestdispatcher(" 실행할페이지.jsp"); dispatcher.forward(request, response); - 위의예에서와같이 RequestDispatcher

More information

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

금오공대 컴퓨터공학전공 강의자료 C 프로그래밍프로젝트 Chap 14. 포인터와함수에대한이해 2013.10.09. 오병우 컴퓨터공학과 14-1 함수의인자로배열전달 기본적인인자의전달방식 값의복사에의한전달 val 10 a 10 11 Department of Computer Engineering 2 14-1 함수의인자로배열전달 배열의함수인자전달방식 배열이름 ( 배열주소, 포인터 ) 에의한전달 #include

More information

Microsoft Word - PLC제어응용-2차시.doc

Microsoft Word - PLC제어응용-2차시.doc 과정명 PLC 제어응용차시명 2 차시. 접점명령 학습목표 1. 연산개시명령 (LOAD, LOAD NOT) 에대하여설명할수있다. 2. 직렬접속명령 (AND, AND NOT) 에대하여설명할수있다. 3. 병렬접속명령 (OR, OR NOT) 에대하여설명할수있다. 4.PLC의접점명령을가지고간단한프로그램을작성할수있다. 학습내용 1. 연산개시명령 1) 연산개시명령 (LOAD,

More information

<4D F736F F F696E74202D20C1A633C0E52043C7C1B7CEB1D7B7A5B1B8BCBABFE4BCD2>

<4D F736F F F696E74202D20C1A633C0E52043C7C1B7CEB1D7B7A5B1B8BCBABFE4BCD2> 쉽게풀어쓴 C 언어 Express 제 3 장 C 프로그램구성요소 이번장에서학습할내용 * 주석 * 변수, 상수 * 함수 * 문장 * 출력함수 printf() * 입력함수 scanf() * 산술연산 * 대입연산 이번장에서는 C 프로그램을이루는구성요소들을살펴봅니다. 일반적인프로그램의형태 데이터를받아서 ( 입력단계 ), 데이터를처리한후에 ( 처리단계 ), 결과를화면에출력

More information

PowerPoint 프레젠테이션

PowerPoint 프레젠테이션 UNIX 및실습 8 장. 프로세스와사용자 명령익히기 1 학습목표 유닉스에서프로세스가무엇인지그개념을이해한다. 프로세스와관련된유닉스명령의사용방법을익힌다. 포그라운드처리와백그라운드처리의차이를이해한다. 사용자정보를보는명령의사용방법을익힌다. 2 01. 프로세스의개념과종류 프로세스 (process) 현재시스템에서실행중인프로그램 프로세스는고유번호를가진다. Process

More information

PowerPoint 프레젠테이션

PowerPoint 프레젠테이션 UNIX 및실습 5 장. Bash 활용하기 학습목표 5 장. Bash 활용하기 Bash 쉘이제공하는다양한기능을이해하고활용한다. 환경변수를이용해작업의효율을높이는환경을설정하는방법을익힌다. 환경설정파일을이용해자신만의환경을설정하는방법을익힌다. Section 01 기본사용법익히기 쉘? 사용자와커널사이의중간역할 사용자가입력한명령을처리하고실행결과를알려줌 쉘의종류 Bourne

More information

Microsoft PowerPoint - Lesson2.pptx

Microsoft PowerPoint - Lesson2.pptx Computer Engineering g Programming g 2 제 3 장 C 프로그래밍구성요소 Lecturer: JUNBEOM YOO jbyoo@konkuk.ac.kr 본강의자료는생능출판사의 PPT 강의자료 를기반으로제작되었습니다. 이번장에서학습할내용 * 주석 * 변수, 상수 * 함수 * 문장 * 출력함수 printf() * 입력함수 scanf() *

More information

Columns 8 through while expression {commands} 예제 1.2 (While 반복문의이용 ) >> num=0

Columns 8 through while expression {commands} 예제 1.2 (While 반복문의이용 ) >> num=0 for loop array {commands} 예제 1.1 (For 반복변수의이용 ) >> data=[3 9 45 6; 7 16-1 5] data = 3 9 45 6 7 16-1 5 >> for n=data x=n(1)-n(2) -4-7 46 1 >> for n=1:10 x(n)=sin(n*pi/10); n=10; >> x Columns 1 through 7

More information

<4D F736F F F696E74202D20C1A63036C0E520BCB1C5C3B0FA20B9DDBAB928B0ADC0C729205BC8A3C8AF20B8F0B5E55D>

<4D F736F F F696E74202D20C1A63036C0E520BCB1C5C3B0FA20B9DDBAB928B0ADC0C729205BC8A3C8AF20B8F0B5E55D> Power Java 제 6 장선택과반복 이번장에서학습할내용 조건문이란? if 문 if, else 문 중첩 if 문 switch 문 break문 continue문 지금까지는문장들이순차적으로실행된다고하였다. 하지만필요에따라서조건이만족되면문장의실행순서를변경할수있는기능이제공된다. 3 가지의제어구조 조건문 문장이실행되는순서에영향을주는문장 조건에따라서여러개의실행경로가운데하나를선택

More information

학습목표 함수프로시저, 서브프로시저의의미를안다. 매개변수전달방식을학습한다. 함수를이용한프로그래밍한다. 2

학습목표 함수프로시저, 서브프로시저의의미를안다. 매개변수전달방식을학습한다. 함수를이용한프로그래밍한다. 2 학습목표 함수프로시저, 서브프로시저의의미를안다. 매개변수전달방식을학습한다. 함수를이용한프로그래밍한다. 2 6.1 함수프로시저 6.2 서브프로시저 6.3 매개변수의전달방식 6.4 함수를이용한프로그래밍 3 프로시저 (Procedure) 프로시저 (Procedure) 란무엇인가? 논리적으로묶여있는하나의처리단위 내장프로시저 이벤트프로시저, 속성프로시저, 메서드, 비주얼베이직내장함수등

More information

4장.문장

4장.문장 문장 1 배정문 혼합문 제어문 조건문반복문분기문 표준입출력 입출력 형식화된출력 [2/33] ANSI C 언어와유사 문장의종류 [3/33] 값을변수에저장하는데사용 형태 : < 변수 > = < 식 > ; remainder = dividend % divisor; i = j = k = 0; x *= y; 형변환 광역화 (widening) 형변환 : 컴파일러에의해자동적으로변환

More information

Microsoft PowerPoint - 05_(Linux)_(Fundamental)_Shell_Programming

Microsoft PowerPoint - 05_(Linux)_(Fundamental)_Shell_Programming GNU/Linux 쉘프로그래밍 (Shell Programming) Seo, Doo-Ok Clickseo.com clickseo@gmail.com 목 차 유닉스쉘 GNU Bash 2 유닉스쉘 (1/10) 쉘 (Shell) 운영체제기능과서비스구현을위해인터페이스제공하는프로그램 명령어를실행시키는명령어해석기 사용자의명령어를입력받아기계어의형태로변환하여커널에전달하는인터페이스역할

More information

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

Microsoft PowerPoint - Perpect C 02.ppt [호환 모드] 02 C 프로그래밍기초 충남대학교이형주 1 C 프로그램구조 콘솔응용프로그램 2 프로그램실행순서 C 프로그램은여러함수의조합으로구성 함수란정해진규칙에의하여일련의작업을수행하는프로그램의단위 실행순서 main 함수는프로그램이실행되면가장먼저시작되는부분 모든함수내부에서는위에서아래로, 좌에서우로, 문장이위치한순서대로실행 3 전처리기 전처리기 (preprocessor) 미리처리하는프로그램으로,

More information

PowerPoint 프레젠테이션

PowerPoint 프레젠테이션 UNIX 및실습 8 장. 프로세스와사용자명령 익히기 1 학습목표 유닉스에서프로세스가무엇인지그개념을이해한다. 프로세스와관련된명령의사용방법을익힌다. 포그라운드처리와백그라운드처리의차이를이해한다. 사용자정보를보는명령의사용방법을익힌다. 2 Section 01 프로세스란 프로세스 (process) 현재시스템에서실행중인프로그램 프로세스는고유번호를가진다. Process ID

More information

A Dynamic Grid Services Deployment Mechanism for On-Demand Resource Provisioning

A Dynamic Grid Services Deployment Mechanism for On-Demand Resource Provisioning C Programming Practice (I) Contents 변수와상수 블록과변수의범위 수식과연산자 제어문과반복문 문자와문자열 배열, 포인터, 메모리관리 구조체 디버거 (gdb) 사용법 2/17 Reference The C Programming language, Brian W. Kernighan, Dennis M. Ritchie, Prentice-Hall

More information

리눅스 프로세스 관리

리눅스 프로세스 관리 프로세스 (Process) Process 프로그램이나명령어를실행하면메모리에적재되어실제로실행되고있는상태를의미 이러한프로세스들은프로세스가시작하면서할당받는프로세스식별번호인 PID(Process ID), 해당프로세스를실행한부모프로세스를나타내는 PPID(Parent Process ID), UID 와 GID 정보를통해해당프로세스가어느사용자에속해있는지, 프로세스가파일에대해갖는권한및프로세스가실행된터미널,

More information

Microsoft PowerPoint - chap06-2pointer.ppt

Microsoft PowerPoint - chap06-2pointer.ppt 2010-1 학기프로그래밍입문 (1) chapter 06-2 참고자료 포인터 박종혁 Tel: 970-6702 Email: jhpark1@snut.ac.kr 한빛미디어 출처 : 뇌를자극하는 C프로그래밍, 한빛미디어 -1- 포인터의정의와사용 변수를선언하는것은메모리에기억공간을할당하는것이며할당된이후에는변수명으로그기억공간을사용한다. 할당된기억공간을사용하는방법에는변수명외에메모리의실제주소값을사용하는것이다.

More information

PowerPoint 프레젠테이션

PowerPoint 프레젠테이션 UNIX 및실습 7 장. 파일과디렉토리검색하기 1 학습목표 파일의내용을검색하는방법을익힌다. 조건에맞는파일과디렉토리를찾는방법을익힌다. 명령이있는위치를찾는방법을익힌다. 2 01. 파일내용검색 - grep global regular expression print 지정한파일에특정문자열 ( 패턴 ) 이들어있는지검색 패턴 문자, 문자열, 문장, 정규표현식 (regular

More information

Chapter 05. 파일접근권한관리하기

Chapter 05. 파일접근권한관리하기 Chapter 05. 파일접근권한관리하기 00. 개요 01. 파일의속성 02. 파일의접근권한 03. 기호를이용한파일접근권한변경 04. 숫자를이용한파일접근권한변경 05. 기본접근권한설정 06. 특수접근권한 파일의속성을이해하고설명할수있다. 접근권한의종류와표기방법을이해하고설명할수있다. 접근권한을바꾸기위해기호모드에서원하는권한을기호로표기할수있다. 접근권한을바꾸기위해숫자모드에서원하는권한을숫자로표기할수있다.

More information

Microsoft PowerPoint - Chapter_04.pptx

Microsoft PowerPoint - Chapter_04.pptx 프로그래밍 1 1 Chapter 4. Constant and Basic Data Types April, 2016 Dept. of software Dankook University http://embedded.dankook.ac.kr/~baeksj 이장의강의목표 2 기본자료형문자표현방식과문자자료형상수자료형변환 기본자료형 (1/8) 3 변수 (Variables)

More information

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

학습목차 2.1 다차원배열이란 차원배열의주소와값의참조 - Part2- 제 2 장다차원배열이란무엇인가 학습목차 2.1 다차원배열이란 2. 2 2 차원배열의주소와값의참조 2.1 다차원배열이란 2.1 다차원배열이란 (1/14) 다차원배열 : 2 차원이상의배열을의미 1 차원배열과다차원배열의비교 1 차원배열 int array [12] 행 2 차원배열 int array [4][3] 행 열 3 차원배열 int array [2][2][3]

More information

PHP & ASP

PHP & ASP PHP 의시작과끝 echo ; Echo 구문 HTML과 PHP의 echo 비교 HTML과 PHP의 echo를비교해볼까요

More information

<4D F736F F F696E74202D20C1A632C0E520C7C1B7CEB1D7B7A5B0B3B9DFB0FAC1A4>

<4D F736F F F696E74202D20C1A632C0E520C7C1B7CEB1D7B7A5B0B3B9DFB0FAC1A4> 쉽게풀어쓴 C 언어 Express 제 2 장프로그램개발과정 통합개발환경 통합개발환경 (IDE: integrated development environment) 에디터 + 컴파일러 + 디버거 Visual C++: 이클립스 (eclipse): Dev-C++: 마이크로소프트제작 오픈소스프로젝트 오픈소스프로젝트 통합개발환경의종류 비주얼 C++(Visual C++)

More information

Microsoft PowerPoint - hw8.ppt [호환 모드]

Microsoft PowerPoint - hw8.ppt [호환 모드] 8.1 데이터경로와제어장치 Chapter 8 데이터경로와제어장치 많은순차회로의설계는다음의두부분으로구성 datapath: data의이동및연산을위한장치 control unit에상태신호제공 control ol unit: datapath th 에서적절한순서로 data 이동및연산을수행할수있도록제어신호제공. 먼저, datapath를설계 다음에, control unit

More information

chap 5: Trees

chap 5: Trees 5. Threaded Binary Tree 기본개념 n 개의노드를갖는이진트리에는 2n 개의링크가존재 2n 개의링크중에 n + 1 개의링크값은 null Null 링크를다른노드에대한포인터로대체 Threads Thread 의이용 ptr left_child = NULL 일경우, ptr left_child 를 ptr 의 inorder predecessor 를가리키도록변경

More information

Microsoft PowerPoint - chap06-1Array.ppt

Microsoft PowerPoint - chap06-1Array.ppt 2010-1 학기프로그래밍입문 (1) chapter 06-1 참고자료 배열 박종혁 Tel: 970-6702 Email: jhpark1@snut.ac.kr 한빛미디어 출처 : 뇌를자극하는 C프로그래밍, 한빛미디어 -1- 배열의선언과사용 같은형태의자료형이많이필요할때배열을사용하면효과적이다. 배열의선언 배열의사용 배열과반복문 배열의초기화 유연성있게배열다루기 한빛미디어

More information

vi 사용법

vi 사용법 유닉스프로그래밍및실습 gdb 사용법 fprintf 이용 단순디버깅 확인하고자하는코드부분에 fprintf(stderr, ) 를이용하여그지점까지도달했는지여부와관심있는변수의값을확인 여러유형의단순한문제를확인할수있음 그러나자세히살펴보기위해서는디버깅툴필요 int main(void) { int count; long large_no; double real_no; init_vars();

More information

Microsoft PowerPoint 자바-기본문법(Ch2).pptx

Microsoft PowerPoint 자바-기본문법(Ch2).pptx 자바기본문법 1. 기본사항 2. 자료형 3. 변수와상수 4. 연산자 1 주석 (Comments) 이해를돕기위한설명문 종류 // /* */ /** */ 활용예 javadoc HelloApplication.java 2 주석 (Comments) /* File name: HelloApplication.java Created by: Jung Created on: March

More information

Content Shell 이란? Redirection & Pipes Shell Programming 변수 조건 프로그램제어 리스트 함수 Shell 에내장된명령 Here documents Page 2

Content Shell 이란? Redirection & Pipes Shell Programming 변수 조건 프로그램제어 리스트 함수 Shell 에내장된명령 Here documents Page 2 SHELL programming Content Shell 이란? Redirection & Pipes Shell Programming 변수 조건 프로그램제어 리스트 함수 Shell 에내장된명령 Here documents Page 2 Shell 이란? User 와 UNIX(Linux) 사이의인터페이스로작동하는프로그램. 사용자는 shell 을통하여 OS 가실행할명령을입력

More information

쉽게 풀어쓴 C 프로그래밍

쉽게 풀어쓴 C 프로그래밍 쉽게풀어쓴 C 언어 Express 제 6 장조건문 이번장에서학습할내용 조건문이란? if 문 if, else 문 중첩 if 문 switch 문 break 문 continue 문 goto 문 5 장까지는문장들이순차적으로실행된다고하였다. 하지만필요에따라서조건이만족되면문장의실행순서를변경할수있는기능이제공된다. 조건문 조건에따라서여러개의실행경로가운데하나를선택 문장이실행되는순서에영향을주는문장

More information

PowerPoint 프레젠테이션

PowerPoint 프레젠테이션 Chapter 08 함수 01 함수의개요 02 함수사용하기 03 함수와배열 04 재귀함수 함수의필요성을인식한다. 함수를정의, 선언, 호출하는방법을알아본다. 배열을함수의인자로전달하는방법과사용시장점을알아본다. 재귀호출로해결할수있는문제의특징과해결방법을알아본다. 1.1 함수의정의와기능 함수 (function) 특별한기능을수행하는것 여러가지함수의예 Page 4 1.2

More information

Microsoft PowerPoint - c2.ppt

Microsoft PowerPoint - c2.ppt 프로그램과표준입출력 프로그램 (program) 자료를입력받아서이를처리하여출력을하는일을수행함 2 장 C 언어의기초 입력 프로그램 ( 처리 ) 출력 식별자, 예약어 자료형 상수와변수 수식 연산자 : 산술연산자 자료형변환 표준입출력 (standard input and output: stdio) 표준입력 : 키보드입력 표준출력 : 모니터또는터미널로출력 (cf) DOS,

More information

17장 클래스와 메소드

17장 클래스와 메소드 17 장클래스와메소드 박창이 서울시립대학교통계학과 박창이 ( 서울시립대학교통계학과 ) 17 장클래스와메소드 1 / 18 학습내용 객체지향특징들객체출력 init 메소드 str 메소드연산자재정의타입기반의버전다형성 (polymorphism) 박창이 ( 서울시립대학교통계학과 ) 17 장클래스와메소드 2 / 18 객체지향특징들 객체지향프로그래밍의특징 프로그램은객체와함수정의로구성되며대부분의계산은객체에대한연산으로표현됨객체의정의는

More information

OCW_C언어 기초

OCW_C언어 기초 초보프로그래머를위한 C 언어기초 2 장 : C 프로그램시작하기 2012 년 이은주 학습목표 을작성하면서 C 프로그램의구성요소 주석 (comment) 이란무엇인지알아보고, 주석을만드는방법 함수란무엇인지알아보고, C 프로그램에반드시필요한 main 함수 C 프로그램에서출력에사용되는 printf 함수 변수의개념과변수의값을입력받는데사용되는 scanf 함수 2 목차 프로그램코드

More information

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

C 언어 프로그래밊 과제 풀이 과제풀이 (1) 홀수 / 짝수판정 (1) /* 20094123 홍길동 20100324 */ /* even_or_odd.c */ /* 정수를입력받아홀수인지짝수인지판정하는프로그램 */ int number; printf(" 정수를입력하시오 => "); scanf("%d", &number); 확인 주석문 가필요한이유 printf 와 scanf 쌍

More information

Microsoft PowerPoint - chap-06.pptx

Microsoft PowerPoint - chap-06.pptx 쉽게풀어쓴 C 언어 Express 제 6 장조건문 컴퓨터프로그래밍기초 이번장에서학습할내용 조건문이란? if 문 if, 문 중첩 if 문 switch 문 break문 continue문 goto 문 5장까지는문장들이순차적으로실행된다고하였다. 하지만필요에따라서조건이만족되면문장의실행순서를변경할수있는기능이제공된다. 컴퓨터프로그래밍기초 2 조건문 조건에따라서여러개의실행경로가운데하나를선택

More information

쉽게 풀어쓴 C 프로그래밍

쉽게 풀어쓴 C 프로그래밍 쉽게풀어쓴 C 언어 Express 제 6 장조건문 이번장에서학습할내용 조건문이란? if 문 if, else 문 중첩 if 문 switch 문 break 문 continue 문 goto 문 5 장까지는문장들이순차적으로실행된다고하였다. 하지만필요에따라서조건이만족되면문장의실행순서를변경할수있는기능이제공된다. 조건문 조건에따라서여러개의실행경로가운데하나를선택 문장이실행되는순서에영향을주는문장

More information

PowerPoint 프레젠테이션

PowerPoint 프레젠테이션 System Software Experiment 1 Lecture 5 - Array Spring 2019 Hwansoo Han (hhan@skku.edu) Advanced Research on Compilers and Systems, ARCS LAB Sungkyunkwan University http://arcs.skku.edu/ 1 배열 (Array) 동일한타입의데이터가여러개저장되어있는저장장소

More information

PowerPoint 프레젠테이션

PowerPoint 프레젠테이션 KeyPad Device Control - Device driver Jo, Heeseung HBE-SM5-S4210 에는 16 개의 Tack Switch 를사용하여 4 행 4 열의 Keypad 가장착 4x4 Keypad 2 KeyPad 를제어하기위하여 FPGA 내부에 KeyPad controller 가구현 KeyPad controller 16bit 로구성된

More information

PowerPoint 프레젠테이션

PowerPoint 프레젠테이션 Chapter 05. 파일접근권한관리하기 00. 개요 01. 파일의속성 02. 파일의접근권한 03. 기호를이용한파일접근권한변경 04. 숫자를이용한파일접근권한변경 05. 기본접근권한설정 06. 특수접근권한 파일의속성을이해하고설명할수있다. 접근권한의종류와표기방법을이해하고설명할수있다. 접근권한을바꾸기위해기호모드에서원하는권한을기호로표기할수있다. 접근권한을바꾸기위해숫자모드에서원하는권한을숫자로표기할수있다.

More information

본문서는 초급자들을 대상으로 최대한 쉽게 작성하였습니다. 본문서에서는 설치방법만 기술했으며 자세한 설정방법은 검색을 통하시기 바랍니다. 1. 설치개요 워드프레스는 블로그 형태의 홈페이지를 빠르게 만들수 있게 해 주는 프로그램입니다. 다양한 기능을 하는 플러그인과 디자인

본문서는 초급자들을 대상으로 최대한 쉽게 작성하였습니다. 본문서에서는 설치방법만 기술했으며 자세한 설정방법은 검색을 통하시기 바랍니다. 1. 설치개요 워드프레스는 블로그 형태의 홈페이지를 빠르게 만들수 있게 해 주는 프로그램입니다. 다양한 기능을 하는 플러그인과 디자인 스마일서브 CLOUD_Virtual 워드프레스 설치 (WORDPRESS INSTALL) 스마일서브 가상화사업본부 Update. 2012. 09. 04. 본문서는 초급자들을 대상으로 최대한 쉽게 작성하였습니다. 본문서에서는 설치방법만 기술했으며 자세한 설정방법은 검색을 통하시기 바랍니다. 1. 설치개요 워드프레스는 블로그 형태의 홈페이지를 빠르게 만들수 있게

More information

제 14 장포인터활용 유준범 (JUNBEOM YOO) Ver 본강의자료는생능출판사의 PPT 강의자료 를기반으로제작되었습니다.

제 14 장포인터활용 유준범 (JUNBEOM YOO) Ver 본강의자료는생능출판사의 PPT 강의자료 를기반으로제작되었습니다. 제 14 장포인터활용 유준범 (JUNBEOM YOO) Ver. 2.0 jbyoo@konkuk.ac.kr http://dslab.konkuk.ac.kr 본강의자료는생능출판사의 PPT 강의자료 를기반으로제작되었습니다. 이번장에서학습할내용 이중포인터란무엇인가? 포인터배열 함수포인터 다차원배열과포인터 void 포인터 포인터는다양한용도로유용하게활용될수있습니다. 2 이중포인터

More information

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

[ 마이크로프로세서 1] 2 주차 3 차시. 포인터와구조체 2 주차 3 차시포인터와구조체 학습목표 1. C 언어에서가장어려운포인터와구조체를설명할수있다. 2. Call By Value 와 Call By Reference 를구분할수있다. 학습내용 1 : 함수 (Functi 2 주차 3 차시포인터와구조체 학습목표 1. C 언어에서가장어려운포인터와구조체를설명할수있다. 2. Call By Value 와 Call By Reference 를구분할수있다. 학습내용 1 : 함수 (Function) 1. 함수의개념 입력에대해적절한출력을발생시켜주는것 내가 ( 프로그래머 ) 작성한명령문을연산, 처리, 실행해주는부분 ( 모듈 ) 자체적으로실행되지않으며,

More information

슬라이드 1

슬라이드 1 UNIT 08 조건문과반복문 로봇 SW 교육원 2 기 학습목표 2 조건문을사용핛수있다. 반복문을사용핛수있다. 조건문 3 조건식의연산결과에따라프로그램의실행흐름을변경 조건문의구성 조건식 실행될문장 조건문의종류 if switch? : ( 삼항연산자 ) if 조건문 4 if 문의구성 조건식 true 또는 false(boolean 형 ) 의결과값을갖는수식 실행될문장

More information

PowerPoint Presentation

PowerPoint Presentation 객체지향프로그래밍 클래스, 객체, 메소드 ( 실습 ) 손시운 ssw5176@kangwon.ac.kr 예제 1. 필드만있는클래스 텔레비젼 2 예제 1. 필드만있는클래스 3 예제 2. 여러개의객체생성하기 4 5 예제 3. 메소드가추가된클래스 public class Television { int channel; // 채널번호 int volume; // 볼륨 boolean

More information

PowerPoint Presentation

PowerPoint Presentation #include int main(void) { int num; printf( Please enter an integer: "); scanf("%d", &num); if ( num < 0 ) printf("is negative.\n"); printf("num = %d\n", num); return 0; } 1 학습목표 을작성하면서 C 프로그램의구성요소에대하여알아본다.

More information

Microsoft Word - FunctionCall

Microsoft Word - FunctionCall Function all Mechanism /* Simple Program */ #define get_int() IN KEYOARD #define put_int(val) LD A val \ OUT MONITOR int add_two(int a, int b) { int tmp; tmp = a+b; return tmp; } local auto variable stack

More information