수강신청을 앞두고 있습니다
무려 12일 ... 내일.....
공강은 없네요....... ( ͠° ͟ʖ ͡°)
다 신청되기만 한다면.. 풀학점 되겠지만
그래도 올클 기원합니다 ......
영강 수학 강의 3개 듣는 사람됨
그런 김에 플레이리스트 공유합니다 🎧
https://music.youtube.com/playlist?list=PL2IFPDOX52cFwlz78y9fxla3rt0faOFQA&si=usQlFFuliZmrADbj
배열이란?
같은 형태의 많은 데이터를 반복문으로 처리하려고 할 때, 메모리에 연속적으로 저장해 놓고 쪼개서 사용하는 방법
선언을 통해 저장 공간을 확보하는데, 하나의 이름으로 한꺼번에 선언해야 한다.
배열 선언 예시는 다음과 같음
// 정수형 배열
int num[5];
// 실수형 배열
float precipitations[6];
// 문자형 배열
char letters[3];
char name[4] = "Chaeyeon";
대괄호([]) 속 숫자에 따라 개수나 순서가 달라진다.
이 값을 첨자(배열에서의 위치)라고 하며, 0부터 시작한다는 것을 기억해야 한다.
int num[3];이라면 0, 1, 2를 의미하는 것!
num[0] = 10;이라면?
0은 첫 번째를 의미한다고 했다.
따라서 첫 번째 배열 요소(순서)의 값은 10이 되는 것이다.
기억하자!
// 첫 번째 배열 요소에 10 대입
num[0] = 10;
// 두 번째 배열 요소에 20 대입
num[1] = 20;
// 첫 번째와 두 번째 요소를 더해 세 번째 요소에 저장
num[2] = num[0] + num[2]
// 만약 num[3]을 출력시키면 어떻게 될까?
// 값을 저장하지 않았으므로 쓰레기 값이 출력된다
배열 초기화
배열 요소를 지워야 하는데 값이 너무 많은 경우에는 초기화를 사용한다.
// 초기화
int num[100] = {0};
첨자에 값이 없으면 컴파일러가 알아서 할당한다.
int num[] = {1,2,3};
sizeof 연산자를 활용한 배열 처리
배열 요소의 개수를 직접 계산해 반복문에 사용함
char형 배열의 선언과 초기
** 저장할 문자열의 길이보다 최소한 하나 이상 크게 배열 선언하기!
널 문자를 저장하기 위해 여분의 공간이 필요하기 때문
이런 식으로! 널 문자는 문자열의 끝을 확인하기 위해 필요함
int main() {
char str[80] = "applejam";
printf("최초 문자열 : %s\n", str);
printf("문자열 입력 : ");
scanf("%s", str)
printf("입력 후 문자열 : %s\n", str);
return 0;
}
주의할 점이 있다면
1. 배열의 크기는 최대한 넉넉하게 선언
2. 배열 요소의 개수는 최소한 '문자열 길이 + 1'이어야 함
strcpy 함수 : 문자열 복사
strcpy(str1, "tiger");
// str1는 첫 번째 인수, tiger는 두 번째 인수
// tiger를 str1에 대입하는 개념
char형 배열에 저장된 문자열을 다른 char형 배열에 대입하기
int main() {
char source[] = "Hello, World!";
char destination[50];
strcpy(destination, source);
printf("문자열 입력 : %s\n", source);
printf("입력된 문자열 : %s\n", destination);
return 0;
}
// 결과
/*
문자열 입력 : Hello, World!
입력된 문자열 : Hello, World!
*/
빈칸을 포함해 문자열을 입력하는 gets 함수
인수로 char형 배열의 배열명을 줌
배열의 크기보다 긴 문자열 입력하지 않도록 주의
gets와 짝을 이뤄 문자열을 출력하는 puts 함수
문자열 상수나 char형 배열의 배열명을 주면 문자열을 화면에 출력함
printf("문자열 입력 : "); // 메시지 출력하고 줄 바뀜 x
gets(str); // 출력한 문자열 바로 옆에 입력
'대외활동, 서포터즈 > 한빛아카데미 혼공학습단 12기' 카테고리의 다른 글
[혼공C] 컴퓨터학과의 혼공학습단 12기 회고록 (0) | 2024.08.18 |
---|---|
[혼공C] 6주차_포인터 (0) | 2024.08.18 |
[혼공C] 4주차_함수 (0) | 2024.08.11 |
[혼공C] 3주차_선택문, 반복문 (0) | 2024.07.21 |
[혼공C] 2주차_chap3-4 (0) | 2024.07.21 |