C언어 (8) 정명희.

Slides:



Advertisements
Similar presentations
03 변수와 자료형 세종대학교 최옥경 교수 참고 : 한빛미디어 뇌를 자극하는 C, INFINITY Perfect C.
Advertisements

National University 1 / 17 컴퓨터 개론 및 실습 강의 6.
YES C 제 1 장 C 언어의 개요 1/34 제 1 장 C 언어의 개요 문봉근. YES C 제 1 장 C 언어의 개요 2/34 제 1 장 C 언어의 개요 1.1 프로그램과 C 언어의 특징 1.2 C 언어의 프로그램 구성 1.3 비주얼 C++ 통합 환경 들어가기.
순천향대학교 정보보호연구회 김 홍 기 포인터와 문자열 순천향대학교 정보보호연구회 김 홍 기
2007 1학기 12 배열.
데이터의 표현과 연산 (1) (Chapter 3)
Power C++ 제6장 포인터와 문자열.
C++ Espresso 제3장 배열과 포인터.
C++ Espresso 제3장 배열과 포인터.
쉽게 풀어쓴 C언어 Express 제5장 수식과 연산자 C Express Slide 1 (of 34)
배열(Array) 선린인터넷고등학교 정보통신과 유 순 옥.
쉽게 풀어쓴 C언어 Express 제16장 파일 입출력 C Express.
2014 ITA 8월 강의 C Programming -1주차- C언어 기초 정대진 ( )
제1장 코드와라이브러리 Page 1 ~ 30 ■■■■■ ■ ■.
C++ 프로그래밍 년 2학기 전자정보공학대학 컴퓨터공학부.
제3장 추가 실습 3장 관련 C 언어 프로그래밍 실습.
C 10장. 함수의 활용 #include <stdio.h> int main(void) { int num;
쉽게 풀어쓴 C언어 Express 제18장 입출력과 라이브러리 함수 C Express.
C언어: 배열 (Arrays).
6장. printf와 scanf 함수에 대한 고찰
ProFrame Utility Template 사용법
윤성우의 열혈 C 프로그래밍 윤성우 저 열혈강의 C 프로그래밍 개정판 Chapter 14. 포인터와 함수에 대한 이해.
Chapter 13 문자 데이터와 문자열 문자 데이터 문자열.
Part 11 문자열 ©우균, 창병모 ©우균, 창병모.
7. while 문의 흐름 제어.
버퍼 오버플로우 시스템보안 류기환 권재홍.
10장 메모리 관리.
C 7장. 배열과 문자열 #include <stdio.h> int main(void) { int num;
컴퓨터 프로그래밍 기초 - 2nd : scanf(), printf() 와 연산자 -
쉽게 풀어쓴 C언어 Express 제3장 C프로그램 구성요소 C Express.
21장. 문자와 문자열 처리 함수.
9장 파일 입출력.
10장 포인터와 문자열 포인터 기본 배열과 포인터 매개변수 전달방법 포인터와 문자열.
표준 출력 함수 printf 출력 데이터 서식화(formatting) 표준 입력 함수 scanf 입력 데이터 서식화
Part 04 입출력과 전처리 ©우균, 창병모 이 슬라이드는 부산대학교 우균이 작성하였습니다. 오류나 수정할 사항 있으면 연락 주세요.
12장 파일처리와 매크로 파일 입출력 함수 문자 입출력 함수 라인 입출력 함수 불록 입출력 함수 매크로.
Chapter 11 Strings.
C언어 프로그래밍의 이해 Ch14. 파일 입출력.
프로그래밍2 및 실습 C언어 기반의 C++ 2.
17장. 문자열 01_ 문자열 사용의 기본 02_ 문자열의 사용.
-Part3- 제2장 문자열 표준 함수와 기타 표준 함수
13. 포인터와 배열! 함께 이해하기.
2장 표준 입출력 표준 입출력 함수의 종류 형식화된 입출력 문자 입출력 문자열 입출력.
Chapter 10 Strings and Pointers
윤성우의 열혈 C 프로그래밍 윤성우 저 열혈강의 C 프로그래밍 개정판 Chapter 11. 1차원 배열.
11장. 1차원 배열 IT응용시스템공학과 김 형 진 교수.
게임프로그래밍 I - 1차원 배열 - 공주대학교 게임디자인학과 박 찬 교수 2011년 4월 25일.
많은 자료가 있을 때는 배열을 사용한다. 아래는 배열을 사용하는 경우의 예시이다. 상황에 따라 1차원 또는 다차원 배열 필요.
제 4장. 객체 지향 프로그래밍 시작하기 학기 프로그래밍언어및실습 (C++).
문자열과 배열 문자열 입출력 문자열 처리 함수 문자 처리 함수 문자열의 배열
Chapter 05. 입출력 함수.
Chapter 12. String 클래스의 디자인
C89(C++03) 프로그래밍 (Part 2) 7 배열 8 변수 범위 9 포인터 10 유도 자료형.
1학기 정리 지난 학기에 배운 내용을 복습해 본다..
컴퓨터 프로그래밍 기초 #13 : 문자열 Seong-Yun Choi
3주차: Control Flow and Others
동창교회 Dream 중고등부
개정판 누구나 즐기는 C언어 콘서트 제10장 문자열 출처: pixabay.
C 13장. 입출력 라이브러리 #include <stdio.h> int main(void) { int num;
어서와 C언어는 처음이지 제23장.
printf("Global Korea\n");
실습과제 1번 배열 크기 : 8 문자열 길이 : 7 // MBCS 예제: 출력 결과 이해하기
윈도우에서의 유니코드.
C 프로그래밍은 매우 도전적인 작업이다. 도전의 이면에 철저한 준비와 체계적인 노력
Chapter 09. 배열.
개정판 누구나 즐기는 C언어 콘서트 제12장 파일 입출력 출처: pixabay.
배열.
11장. 1차원 배열.
오늘은 기분이 좋아 예수님과 함께라서 내 안에 있는 예수님의 사랑을 너에게 뿌려 주겠어 오프닝 송.
Presentation transcript:

C언어 (8) 정명희

배열 변수(variable) 배열 프로그램에서 어떤 값을 기억시키기 위한 저장 공간 오직 한 개의 값만을 저장 프로그램에서 필요한 만큼의 변수를 선언하여 사용 많은 수의 변수가 필요하거나 데이터를 순서대로 저장해야 한다면 변수를 사용하는 것이 불편 배열 하나의 이름으로 참조되는 같은 자료형을 갖은 메모리의 연속적인 공간 하나의 이름으로 참조되는 변수들의 집합 배열은 변수와 달리 번호가 붙은 저장 공간 번호로 구별되는 동일한 데이터 형의 연속된 기억 공간 배열의 원소의 개수는 한 개에서부터 메모리가 허락되는 범위 내에서의 무한대까지 선언 가능 모든 자료형 선언 가능 배열의 원소를 나타내는 첨자는 ‘0’번부터 시작.

배열의 선언 배열명과 변수의 개수, 변수의 자료형으로 선언. 변수의 개수만큼 연속된 기억공간 할당.

배열의 초기화 (1) 선언을 먼저하고 배열의 각 원소의 값을 할당하는 방법 선언과 동시에 값을 할당하는 방법 int    a[3];      // 배열의 선언 a[0] = 10;       // 배열의 초기화 a[1] = 15; a[2] = 20 선언과 동시에 값을 할당하는 방법 int a[3] = { 10, 15, 20 };   // 배열의 선언과 동시에 초기화 크기 할당하지 않고 초기화 하는 방법 int a[] = { 10, 15, 20 };  

배열의 초기화 (2) 배열요소의 수보다 초기화 값이 적으면 남는 기억공간은 0으로 채워짐. 배열을 선언하면 처음에 쓰레기값이 존재 배열 선언시 초기화하면 배열요소의 개수를 생략가능    int nums[5] = {1, 3};

배열의 사용 ages배열의 세 번째 배열요소에 데이터를 저장하고 출력할 때 첨자는 0부터 시작하므로 배열요소의 개수가 5개이면 5를 첨자로 사용할 수 없다. int ages[5]; ages[2] = 20; printf(“세 번째 배열요소에 저장된 값은 : %d\n”, ages[2]);

배열의 종류 종류 선언 시 괄호의 수에 따라 1차원 배열, 2차원 배열, 3차원 배열 그리고 다차원 배열로 분류 2차원 배열은 2차원 디지털 이미지의 값을 표현하는 형태 3차원 배열은 3D 그래픽 데이터를 표현할 수 있는 형태 행우선 배열

배열과 주소체계

배열과 함수의 사용 함수의 인수로 배열을 사용할 경우 함수의 인자로 배열을 사용할 경우 함수의 결과값으로 배열을 반환하는 경우 배열의 이름만 사용 함수의 인자로 배열을 사용할 경우 배열을 표시하되 배열의 크기는 생략 함수의 결과값으로 배열을 반환하는 경우 포인터 이용 배열 이름은 포인터 상수이고 배열과 포인터는 컴퓨터 메모리의 주소를 나타낸다는 점에서 서로 유사.

문자배열의 선언과 사용 (1) 문자배열은 기본적으로 여러 개의 문자를 저장하기 위한 char형 배열. 4개의 문자를 저장할 수 있는 문자배열의 선언 배열요소에 문자를 저장하면 문자열이 만들어진다.

문자배열의 선언과 사용 (2) 널문자 필수 문자배열의 마지막에 널문자(‘\0’)가 없으면 저장된 문자열의 끝을 알 수 없다. char word[50]; word[0]=‘L’; word[1]=‘o’; word[2]=‘v’; word[3]=‘e’; printf(“%s”, word); Love儆 儆 儆 儆 儆 儆 儆 儆 儆 儆 儆 儆 儆 儆 儆 儆 儆

문자배열의 선언과 사용 (3) 문자배열은 기본적으로 문자상수들로 초기화 함. 초기화하고 남는 배열요소는 0으로 채워짐. char str[10] = {‘d’, ‘r’, ‘e’, a’, ‘m’, ‘\0’}; 초기화하고 남는 배열요소는 0으로 채워짐. char형 배열요소에 0이 저장되면 널문자가 되므로 결국 남는 배열요소는 널문자로 채워짐. 문자배열은 문자열상수로 직접 초기화 가능. 단, 선언과 동시에 초기화하는 경우만 가능. char str[80] = “dream”; str = “utopia”; // 배열 선언과 동시에 초기화 ( ○ ) // 배열에 문자열을 바로 대입할 수 없다. ( × )

scanf함수를 사용한 문자열의 입력 문자열을 입력 받을 때 %s변환문자열과 배열명을 scanf함수의 전달인자로 준다. - word배열에 vitamin을 입력 받은 경우 printf(“문자열을 입력하세요 : ”); scanf(“%s”, word);

문자열 처리함수 (1) 문자열 처리하기 위한 다양한 문자열 처리 함수들 제공 문자열 처리 함수의 원형 <STRING.H> 헤더파일(Header File) 필요 문자열 처리 함수의 원형 size_t strlen( const char *string ); char *strcpy( char *strDestination, const char *strSource ); char *strcat( char *strDestination, const char *strSource ); int strcmp( const char *string1, const char *string2 ); .

문자열 처리함수 (2) 함 수 내 용 strcpy(to, from) 한 문자열을 다른 문자열에 복사 내 용 strcpy(to, from) 한 문자열을 다른 문자열에 복사 배열의 경계를 검사하지 않음 strcat(to, from) 문자열 결합. 배열의 경계를 검사하지 않음. strlen(str) 문자열의 길이, 즉 문자 수를 반환. null 문자는 포함되지 않음. strcmp(str1,str2) 두 문자열을 비교하여 다음 중 하나의 Return value를 반환. 0 : str1,str2 두 문자열이 같다. 양수 : str1이 str2 보다 크다. 음수 : str1이 str2 보다 작다. .