1주차 C언어 교육자료 15-03-31

Download Report

Transcript 1주차 C언어 교육자료 15-03-31

C언어
Passion
C언어 – 1주
 기본 용어
 C언어 기본구조
 표준 입출력
기본용어
 소스코드(Source Code 원시 프로그램 Source Program)
 프로그래머가 만든 소스파일
 고급언어에 속한다
 C는 hello.c , C++은 hello.cpp , Java는 Hello.java 등 으로 저장된다
 컴파일러(Compiler)
 원시프로그램 → 기계어
 소스코드를 컴퓨터가 읽을 수 있는 형태로 변환한다.
 번역가에 해당한다.
기본용어
 링킹(Linking)
 기계어 파일 → 실행 파일
 라이브러리와 기계어(모듈)를 연결하는 작업
 라이브러리(Library)
 프로그램 개발에 쓰이는 만들어진 프로그램 모듈
printf()
기본용어
 리팩토링(Refactoring)
 결과가 변형되지 않고 소스코드의 구조를 변경하는 것
 유지보수 행위란다
 디버깅(Debugging)
 오류를 수정하는 작업
C언어 기본구조
 전처리기
 컴파일을 하기 전에 작업을 수행하는 것
 리턴형
 함수에서 반환하는 값의 자료형
 매개변수(Parameter)
 인자, 인수라고도 함
 함수들 간에 서로 데이터를
교환할때 사용하는 것
 리턴문
 함수에서 반환하는 값
#전처리기
리턴형 함수이름(매개변수)
{
프로그램 소스;
리턴문;
}
C언어 기본구조
hello.c
C언어 표준
ANSI C
#include <stdio.h>
int main(void)
{
printf("Hello, World");
return 0;
}
C언어 기본구조
 함수(Function)
 특정한 작업을 하도록 만들어진 독립적인 단위 모듈
계산기
입력
처리
출력
함수
프로그램
매개변수
처리
리턴값
프로그램
C언어 기본구조
 함수 정의
 함수 사용
#include <stdio.h>
void print(void)
{
printf("Hello, World");
}
int main(void)
{
…
print();
…
return 0;
}
C언어 기본구조
 함수 정의
 함수 사용
#include <stdio.h>
void print(char* str)
{
printf("%s",str);
}
int main(void)
{
…
print("Hello, World!");
…
return 0;
}
표준입출력
 C언어 표준출력 함수
printf("Hello, World");
 stdio.h에 정의된 많은 종류의 입출력 함수 중 대표적인 출력함수
구분
사용법
문장(문자열)출력
printf("소프트웨어");
int형 숫자 출력
printf("%d",20);
문장과 숫자 출력
printf("나이는 %d입니다.",20);
문장과 변수(age)값
printf("나이는 %d입니다.",age);
여러 변수값 출력
printf("나이=%d, 몸무게=%f",age,weight);
문자
printf("%c",'z');
문장(문자열)
printf("%s","software");
표준입출력
 괄호 안의 큰 따옴표(" ")사이에 출력하고 싶은 문장을 씀
 "소프트웨어"라는 문장을 화면에 출력
 printf("소프트웨어");
 문장 중에는 숫자나 문자가 들어 갈 수 있음
 printf("나이는 10살입니다.");
 특정 숫자나 문자를 특정 위치에 출력 할 때는 %d, %c, %s, %f 등 형(type)지
정 문자를 그 자리에 쓰고 닫는 큰 따옴표 다음에 콤마(,) 를 쓰고 해당 숫자
나 문자를 씀
 %d자리에 20이 들어가서 "나이는 20살이다"라는 문장이 출력
 printf("나이는 %d살이다",20); //printf("나이는 20살이다");
 형지정 문자(%d)를 제외한 모든 내용은 그대로 출력
 %로 시작하는 형지정 문자만큼 콤마로 구분되는 값이 있어야 함
 %d자리에 20이, %f자리에 55.8이 들어감
 "나이는 20 몸무게는 55.8"이 출력
 printf("나이는 %d 몸무게는 %f",20,55.8);
표준입출력
 C언어 표준입력 함수
scanf("%d",&var);
 stdio.h에 정의된 많은 종류의 입출력 함수 중 대표적인 입력함수
SCANF()함수의 형식 예
 %다음에 *를 쓰면 입력한 내용을 버리라는 것임
 scanf("%*d%d",&num);
 두 개의 수를 입력받는데 첫 번째 입력받은 수는 무시하고 두 번째 입
력받은 수를 num에 저장
 데이터들을 키보드가 아닌 파일로부터 입력 받는 경우 특정한 부분
만 입력받기 위해서 사용
 [폭]부분은 정수값을 지정하여 읽어들일 최대 길이를 지정
 %3d로 입력받으면 입력받는 숫자 중 처음 3개만 입력받음
 12345를 입력하면 123만 받아들임
 [크기]부분
scanf("%[*][폭][크기]형지정문자", …..);
 h는 정수형이 short형
 l은 정수형은 long형, 실수형은 double형
 L은 실수형이 long double형
표준입출력
 형지정문자
형지정 문자
의미
d, i
10진(decimal)정수형
o
8진(octal)정수형
x, X
16진(hexadecimal) 정수형
c
문자
s
문자열
u
부호 없는 10진 정수형
f
실수형
e, E
지수형
g, G
e와 f 중에서 출력할 자리수를 덜 차지하는 형태
p
포인터의 번지(address)값
실습
 자신의 학번을 정수형 변수(int)에 입력받아 저장하여 학번과 이름
을 출력하기