*함수 원형

 

- 함수 원형(function prototyping) : 컴파일러에게 함수에 대하여 미리 정보를 알리는 것

 

- 함수 원형의 형식 ↓

 

  반환형 함수이름 (매개 변수1 , 매개 변수2 ,~~~~);

 

Ex) int get_integer(void);                

int combination(int n ,int r);

 

 

 

#라이브러리 함수

 

- 라이브러리 함수(library function) : 컴파일러에게 제공하는 함수

 

- 표준 입출력

- 수학 연산

- 문자열 처리

- 시간 처리

- 오류 처리

- 데이터 검색과 정렬

 

 

 

#난수 함수 라이브러리

 

- 난수(random number)는 규칙성이 없이 임의로 생성되는 수이다.

 

- 난수는 암호학이나 시뮬레이션 , 게임 등에서 필수적이다.

 

 

 

 

#rand() : 난수를 생성하는 함수

            0부터 RAND_MAX 까지의 난수를 생성

 

헤더파일 : <stdlib.h> 기본 사용 : rand();

 

- 범위를 지정하여 임의의 값을 생성하는 경우 : rand() % 갯수 + 시작 수;

 

 

 

 

 

 

 

 

#srand()함수

 

- rand()함수의 초기값을 설정하는 함수

 

- srand(초기값);

 

- 매번 난수를 다르게 생성하려면 시드(seed)를 다르게 하여야 한다.

   srand((unsigned)time(NULL));

 

 

 

 

 

 

 

#time()함수


- 1970년 1월1일 0시0분0초부터 현재까지의 시간을 초단위로 제공한다.

 

- time(NULL)


- 헤더파일: time.h

 

- rand()함수의 값이 일정하지 않도록 time()을 이용하여 초기화

 

- srand(time(NULL))

 

 

 

#Sleep()함수

 

- 밀리언 초(1/1000)단위로 프로그램의 실행지연

 

- Sleep(밀리언초);  /* S는 무조건 대문자 */

 

 

system()함수
  - 콘솔창에서 사용할 수 있는 명령어를 실행시키는 함수

 

  사용형식


  system("명령어 입력");

 

  **화면을 깨끗이 지우는 명령
  system("cls");

 

  **화면을 잠깐 멈추는 명령
  system("pause");

 

  **지금위치의 폴더들을 확인명령
  system("dir");

 

 

 

 

 

 

 

 

#rand()함수를 이용하여 로또 6개 숫자 뽑아보기

 

 

 

 

 

 

 

 

 

#로또 프로그램 중복 x

 

 

 

 

 

 

 

#변수의 속성

 

- 이름 , 타입 , 크기 , 값 , + 범위 , 생존시간 , 연결

 

- 범위(scope) : 변수가 사용 가능한 범위 , 가시성

 

- 생존시간(lifetime) : 메모리에 존재하는 시간

 

- 연결(linkage) : 다른 영역에 있는 변수와의 연결 상태

 

 

 

 

#변수의 종류

 

- 지역 변수 : 함수 내에서 선언된 변수

 

  선언된 영역이 다르면 동일한 변수명을 사용할 수 있다.

 

  해당 지역을 빠져나가면 지역변수는 소멸된다.


  호출할때마다 새롭게 할당된다.

 

 

 

 

 

 

 

 

 

 

#지역변수 예제

 

 

 

 

 

 

 

 

 

- 전역 변수 : 함수 밖에서 선언된 변수

 

  프로그램이 시작하고 끝날때까지 메모리공간이 남아있는다.

 

                 자동적으로 0으로 초기화 된다.

 

                 main함수든 내가 만든 함수 안에서 자유롭게 접근이 가능하다.

 

 

 

 

 

 

 

 

 

 

#전역 변수 예제

 

 

 

 

 

 

 

 

 

#문자열 처리 라이브러리

 

 

 

 

 

 

#문자열 길이 (strlen)

 

- strlen("Hello") 는 5를 반환한다.

 

 

 

 

 

 

 

 

 

#문자열 복사 (strcpy)

 

- char dst[6];

 

- char src[6] ="Hello";

 

- strcpy(dst,src)

 

 

 

 

 

 

 

 

 

 

 

#문자열 연결 (strcat)

 

- char dst[12] = "Hello";

 

- char src[6] = "World";

 

- strcat(dst,src);

 

 

 

 

 

 

 

 

 

 

 

 

#배열 초기화 방법

 

- 1. 배열선언과 동시에 초기화


- 2. scanf()입력


- 3. strcpy() 초기화

 

 

 

 

#문자열 비교

 

 

 

 

 

 

 

 

 

#if문으로 문자열 비교

 

 

 

 

 

 

 

 

 

 

 

#strcmp로 문자열 비교

 

 

 

 

 

 

 

 

 

 

 

#수학 라이브러리 함수

 

 

 

 

 

 

- 헤더파일은 #include <math.h> 사용

 

 

 

 

#간단한 자동차 게임 만들어보기

 

 

알고리즘 : 난수 발생기를 초기화 한다.

    

for( i = 0 ; i < 주행시간 ; i++)

 

난수를 발생하여 자동차1의 주행거리에 누적한다.

 

    난수를 발생하여 자동차2의 주행거리에 누적한다.

 

    disp_car()를 호출하여 자동차1을 화면에 *표로 그린다.

 

      disp_car()를 호출하여 자동차2를 화면에 *표로 그린다.

 

 

 

 

 

 

 

 

 

#로그인 프로그램 만들어보기

 

 

 

 

 

 

 

 

 

 

#가위바위보 프로그램 만들어보기

 

 

 

 

 

 

 

 

 

 

 

#숫자 맞추는 프로그램

 

 

 

 

 

 

+ Recent posts