본문 바로가기

C언어/정리
C 언어 도전기 5

1. array
2. array

 

int main(void)
{
int subway_array[3]; // [0][1][2]
subway_array[0] = 30;
subway_array[1] = 40;
subway_array[2] = 50;
 
for (int i = 0; i < 3; i++)
{
printf("지하철 1호차에 %d명이 타고 있습니다.\n", i+1, subway_array[i]);
}

return 0;
}

3. 값 설정

int main(void)
{
int arr[10] = { 1, 2, 3, 4, 5, 6, 7, 8, 9, 10 };
for (int i = 0; i < 10; i++)
{
printf("%d\n", arr[i]);
}

return 0;
}

** 
int main(void)
{
int arr[10] = { 1, 2 }; // 3번째 값부터는 자동으로 0으로 초기화 됨
for (int i = 0; i < 10; i++)
{
printf("%d\n", arr[i]);
}
}

4. 실수 값 설정

int main(void)
{
float arr_f[5] = { 1.0f, 2.0f, 3.0f };
for (int i = 0; i < 5; i++)
{
printf("%.2f\n", arr_f[i]);
}

return 0;
}

5-1. 문자 vs 문자열

int main(void)
{
char str[7] = "coding"; // [c][o][d][i][n][g][\0]
printf("%s\n", str);

return 0;
}



**문자열 끝에는 '끝' 을 의미하는 NULL 문자 '\0이 포함되어야 함! () 안에 숫자를 +1만큼 써주면 \0이 자동으로 포함됨

5-2. 문자 vs 문자열

int main(void)
{
char str[] = "coding";
printf("%s\n", str);
printf("%d\n", sizeof(str));

return 0;
}

** \0까지 포함하기 때문에 []안의 값이 자동으로 7로 나옴. (coding=6 + 1)

5-3. 문자 vs 문자열

int main(void)
{
char str[] = "coding";

for (int i = 0; i < sizeof(str); i++)
{ 
printf("%c\n", str[i]);
}

return 0;
}

6. 한글&nbsp; vs 영어 byte

int main(void)
{
char kor[] = "나무의 하루";
printf("%s\n", kor);
printf("%d\n", sizeof(kor));

return 0;
}

** 영어 1글자 : 1 byte  / 한글 1글자 : 2 byte /  공백 : 1 byte   ---> 값이 다르게 나옴!

7. 문자열 심화

int main(void)
{
char c_array[10] = { 'c','o','d','i','n','g', };

for (int i = 0; i < sizeof(c_array); i++)
{
printf("%c\n", c_array[i]);
}

return 0;
}

8.  ASCII 코드(아스키 코드)

main(void)
{
char c_array[10] = { 'c','o','d','i','n','g', };

for (int i = 0; i < sizeof(c_array); i++)
{
printf("%d\n", c_array[i]); // ASCII 코드 값 출력(null 문자 0으로 입력됨)
}

return 0;
}


** ASCII 코드 : ANSI(미국표준협회)에서 제시한 표준 코드 체계 - 사용하는 이유: 국가별 호환 문제를 해결하기 위함
**7bit, 총 128개 코드(0~127)
**a : 97 (문자 a의 아스키 코드 정수값) / A : 65 / 0 : 48 / \0 : 0 

**  문자에 해당하는 아스키코드 정수값 확인하는 방법  -> printf("%d\n", 'a')

**  아스키코드 정수값에 해당하는 문자 확인하는 방법 ↓

for (int i = 0; i < 128; i++)
{
printf("아스키코드 정수 %d : %c\n", i, i);
}

'C언어 > 정리' 카테고리의 다른 글

C 언어 도전기 7  (0) 2022.07.04
C 언어 도전기 6  (0) 2022.07.03
C 언어 도전기 4  (0) 2022.07.02
C 언어 도전기 3  (0) 2022.06.28
C 언어 도전기 2  (0) 2022.06.27