어서와 C언어는 처음이지 제21장.

Slides:



Advertisements
Similar presentations
Chapter 12. 배열. 배열  동일한 항목들이 동일한 크기로 연속적으로 메모리에 저장되는 구조  동일한 자료 유형이 여러 개 필요한 경우에 이용할 수 있는 자료 구조.
Advertisements

Chapter 12 배열. 2 배열  의미  배열은 연속적인 항목들이 동일한 크기로 메모리에 저장되는 구조로 그 사용이 간편  배열은 동일한 자료 유형이 여러 개 필요한 경우에 이용할 수 있는 자료 구조 일반 변수가 단독주택이라면 배열은 아파트  크기  배열의.
6 장. printf 와 scanf 함수에 대한 고찰 printf 함수 이야기 printf 는 문자열을 출력하는 함수이다. – 예제 printf1.c 참조 printf 는 특수 문자 출력이 가능하다. 특수 문자의 미 \a 경고음 소리 발생 \b 백스페이스 (backspace)
1 08 배열. 한국대학교 객체지향연구소 2 C 로 배우는 프로그래밍 기초 2 nd Edition 배열  동일한 자료유형의 여러 변수를 일괄 선언  연속적인 항목들이 동일한 크기로 메모리에 저장되는 구조  동일한 자료 유형이 여러 개 필요한 경우에 이용할 수 있는.
1. 2 차원 배열  배열은 동일한 데이터 유형으로 여러 개의 변수를 사용할 경우 같은 이 름으로 지정하여 간편하게 사용할 수 있도록 하는 것으로서 앞에서 1 차원 배열을 공부하였습니다.  2 차원 배열은 바둑판을 생각하면 되며, 1 차원 배열에서 사용하는 첨자를 2.
4장 배열과 함수 한빛미디어(주).
ㅎㅎ 구조체 구조체 사용하기 함수 매개변수로서의 구조체 구조체 포인터와 레퍼런스 구조체 배열.
쉽게 풀어쓴 C언어 Express 제11장 포인터 C Express Slide 1 (of 27)
#include <stdio.h> int main(void) { float radius; // 원의 반지름
제 9 장 구조체와 공용체.
7장 배열 ②.
개정판 누구나 즐기는 C언어 콘서트 제9장 포인터 출처: pixabay.
5장 배열 작성자 : 변재현.
C언어 콘서트 제6장 반복문.
5장. 참조 타입.
쉽게 풀어쓴 C언어 Express 제3장 C프로그램 구성요소 C Express.
11장. 포인터 01_ 포인터의 기본 02_ 포인터와 Const.
8장 함수 함수의 필요성 라이브러리 함수와 사용자 정의 함수 함수의 정의, 원형, 호출 배열을 함수 인자로 전달 재귀호출.
고급 선택 제어문과 반복문 Chapter 9 C에서의 다중 선택 제어문 선 검사 반복 구조와 for 문
SqlParameter 클래스 선문 비트 18기 발표자 : 박성한.
컴퓨터 프로그래밍 기초 #02 : printf(), scanf()
쉽게 풀어쓴 C언어 Express 제10장 배열 C Express Slide 1 (of 32)
2주차: 변수, 수식, Control Flow.
제8장 배열 1부 8.1 배열 8.2 배열의 초기화 8.3 배열의 응용 8.4 정렬과 탐색 8.5 다차원 배열.
6장. printf와 scanf 함수에 대한 고찰
프로그래밍 랩 – 7주 리스트.
컴퓨터 프로그래밍 실습 #6 제 4 장 클래스 작성.
11장. 1차원 배열.
쉽게 풀어쓴 C언어 Express 제7장 반복문 C Express Slide 1 (of 27)
쉽게 풀어쓴 C언어 Express 제3장 C프로그램 구성요소 C Express.
JA A V W. 03.
C 언어 교육 02 주차 – scanf & 반복문과 조건문 교육부장 조하정.
프로그래밍 개요
어서와 C언어는 처음이지 제14장.
어서와 C언어는 처음이지 제15장.
박성진 컴퓨터 프로그래밍 기초 [09] 배열 part 1 박성진
13. 포인터와 배열! 함께 이해하기 IT응용시스템공학과 김 형 진 교수.
3장 상수 변수 기본 자료형 키워드와 식별자 상수와 변수 기본 자료형 형변환 자료형의 재정의.
Java의 정석 제 5 장 배 열 Java 정석 남궁성 강의 의
19. 함수 포인터와 void 포인터.
3장. 변수와 연산자 교안 : 전자정보통신 홈페이지 / 커뮤니티/ 학술세미나
Chapter6 : JVM과 메모리 6.1 JVM의 구조와 메모리 모델 6.2 프로그램 실행과 메모리 6.3 객체생성과 메모리
컴퓨터 프로그래밍 기초 - 10th : 포인터 및 구조체 -
2장. 변수와 타입.
컴퓨터 프로그래밍 기초 - 5th : 조건문(if, else if, else, switch-case) -
처음으로 배우는 C 프로그래밍 제4부 복합 데이터 형 제 7 장 배열.
5장 배열과 문자열 C 프로그래밍.
컴퓨터 프로그래밍 기초 - 8th : 함수와 변수 / 배열 -
8주차: Strings, Arrays and Pointers
Chapter 08. 함수.
문자열 컴퓨터시뮬레이션학과 2015년 봄학기 담당교수 : 이형원 E304호,
Choi Seong Yun 컴퓨터 프로그래밍 기초 #03 : 변수와 자료형 Choi Seong Yun
^^ Computer Programming 2 dmpr.cnu.ac.kr/~daygax.
함수(Function) ◈ 함수의 개념 및 사용 이유 ◈ 함수 정의, 호출 및 선언 ◈ 지역변수와 전역변수 ◈ return 문
[ 단원 04 ] 반복과 배열.
에어 PHP 입문.
4장. 데이터 표현 방식의 이해. 4장. 데이터 표현 방식의 이해 4-1 컴퓨터의 데이터 표현 진법에 대한 이해 n 진수 표현 방식 : n개의 문자를 이용해서 데이터를 표현 그림 4-1.
Homework #12 (1/2) 프로그램을 작성하고, 프로그램과 실행 결과를 프린트하여 제출한다.
7주차: Functions and Arrays
제 8장. 클래스의 활용 학기 프로그래밍언어및실습 (C++).
11장 배열 1. 배열이란? 1.1 배열의 개요 1.2 배열의 선언과 사용.
컴퓨터 프로그래밍 기초 - 9th : 배열 / 포인터 -
어서와 C언어는 처음이지 제16장.
제 29 강 스트링(string) 다루기 s a i s . s T i h t g r i n.
개정판 누구나 즐기는 C언어 콘서트 제13장 동적 메모리 출처: pixabay.
Chapter 09. 배열.
13. 포인터와 배열! 함께 이해하기.
어서와 C언어는 처음이지 제22장.
6 객체.
2019 2학기 9장 배열과 포인터 1. 주소, 주소연산자(&) 2. 포인터, 역참조연산자(*) 3. 배열과 포인터.
Presentation transcript:

어서와 C언어는 처음이지 제21장

배열 배열(array)은 같은 유형의 요소(element)들로 이루어진다. int i; /* 일반 변수를 정의한다. */

배열의 초기화 초기값들을 중괄호로 감싸서 배열 이름 다음에 등호와 같이 붙이는 것 int vals[5] = { 10, 40, 70, 90, 120 };

배열의 초기화 예 float money[10] = { 6.23, 2.45, 8.01, 2.97, 6.41 }; double annualSal[6] = { 43565.78, 75674.23, 90001.34, 10923.45, 39845.82 }; char grades[5] = { 'A', 'B', 'C', 'D', 'F' }; NULL 문자가 끝에 없기 때문에 grades는 문자 배열이지만 문자열은 아니다. char italCity[7] = { 'V', 'e', 'r', 'o', 'n', 'a', '\0' };

배열의 초기화 배열의 모든 요소를 0으로 만들려고 한다면 다음처럼 하면 된다. float amount[100] = { 0.0 }; /* 모든 배열 요소가 0이 된다. */

배열 안에 값 저장하기 정수 배열의 경우 int ages[3]; for (i = 0; i < 3; i++) { printf("#%d번째 자식의 나이는? ", i + 1); scanf(" %d", &ages[i]); // 사용자로부터 나이를 입력받는다. }

예제: 농구 게임 이 프로그램은 10번의 농구 게임에서 특정한 선수가 얼마나 많은 점수를 득점했는지를 추적한다. /* 이 프로그램은 10게임에서의 농구선수 점수를 저장하기 위한 배열을 생성한다. 처음 6개의 게임의 점수는 프로그램에서 입력된다. 나머지 4개에서의 게임 점수는 사용자에 의하여 입력된다. */ 경기 7에서 선수의 득점은? 8 경기 8에서 선수의 득점은? 11 경기 9에서 선수의 득점은? 14 경기 10에서 선수의 득점은? 21 선수의 평균 득점은 14.9

// 완전 초보자 가이드 3판 21장 예제 #1 #include <stdio.h> main() { int gameScores[10] = { 12, 5, 21, 15, 32, 10 }; int totalPoints = 0; int i; float avg; // 나머지 4개의 게임에서의 점수만 입력받으면 된다. // 따라서 반복 루프가 배열 요소 6-9만을 처리한다. for (i = 6; i < 10; i++) // 배열 첨자에 1을 더한다. // 따라서 사용자는 첫 번째 게임을 게임 0이 아닌 게임 1로 // 생각할 수 있다. printf("게임 %d에서 선수의 득점은? ", i + 1); scanf(" %d", &gameScores[i]); }

// 이제 모든 10개의 경기에 대한 점수가 있으므로 // 평균을 계산하기 위하여 점수를 전부 더한다. for (i = 0; i<10; i++) { totalPoints += gameScores[i]; } // 부동 소수점 변수를 사용한다. // 평균은 실수로 계산될 것이다. avg = ((float)totalPoints / 10); printf("\n\n선수의 평균 득점은 %.1f.\n", avg); return(0);

Lab: 평균 계산 사용자에게 10개의 정수값을 받아서 배열에 저장한다. 배열에 저장된 값들의 합계와 평균을 계산하여 출력한다. 정수값을 입력하시오: 10 정수값을 입력하시오: 20 정수값을 입력하시오: 30 정수값을 입력하시오: 40 정수값을 입력하시오: 50 정수값을 입력하시오: 60 정수값을 입력하시오: 70 정수값을 입력하시오: 80 정수값을 입력하시오: 90 정수값을 입력하시오: 100 합계는 550입니다. 평균은 55입니다.

#include <stdio.h> #define SIZE 10 int main(void) { int values[SIZE]; int i, sum; for (i = 0; i < SIZE; i++){ printf("정수값을 입력하시오: "); scanf("%d", &values[i]); } sum = 0; for (i = 0; i < SIZE; i++) sum += values[i]; printf("합계는 %d입니다. \n", sum); printf("평균은 %d입니다. \n", sum / SIZE); return 0;

학습 정리 동일한 자료형의 리스트를 생성할 때 배열을 사용하자. 배열 요소는 첨자로 참조한다. 각 배열 요소를 하나씩 처리하기 위해서는 for 루프를 사용하자. 배열 요소를 초기화하든지, 출력하든지, 변경할 수 있다. 배열 안에서는 정의된 크기보다 더 많은 요소를 사용하면 안 된다. 배열을 어떤 값으로 초기화시키기 전까지는 배열을 사용하면 안 된다.

Q & A

Lab: 앞의 배열 거꾸로 바꾸기 배열에 저장된 값들을 거꾸로 출력한다. 또한, 배열의 값들을 거꾸로 저장한다. 정수값을 입력하시오: 10 정수값을 입력하시오: 20 정수값을 입력하시오: 30 정수값을 입력하시오: 40 정수값을 입력하시오: 50 정수값을 입력하시오: 60 정수값을 입력하시오: 70 정수값을 입력하시오: 80 정수값을 입력하시오: 90 정수값을 입력하시오: 100 합계는 550입니다. 평균은 55입니다.