반응형

배열 25

(C언어) 배열에서 최대값 최소값 구하기

배열에 있는 값 중에서 최대값과 최소값을 구하는 프로그램입니다. C언어 #include int main() { int a[10] = { 5, 44, 77,999,33,-55, -35, 85, 95, 100 }; int i, max, min; max = min = a[0]; // 맨 처음 값을 최대값, 최소값으로 초기화 for (i = 1; i max) max = a[i]; // 더 큰 값을 최대값으로 설정 if (a[i] < min) min = a[i]; // 더 작은 값을 최소값으로 설정 } printf("최대값: %d\n", max); printf("최소값: %d\n", min); return 0; }

(C언어) 1차원 배열과 포인터

1차원 배열과 포인터에 대해 설명합니다. 배열은 메모리상에 연속적으로 공간을 확보하고 있어서, 포인터를 이용해서 배열의 원소를 다루기 쉽습니다. 포인터를 배열처럼 다룰 수 있으며, 배열을 포인터처럼 다룰 수도 있습니다. 다음과 같은 1차원배열의 선언을 살펴보겠습니다. int a[5] = { 1, 2, 3, 4, 5}; [암기] 배열명은 해당 배열의 시작주소를 나타냅니다. 이 배열의 시작주소는 다음과 같이 표현할 수 있습니다. a &a[0] &a 주의할 점은 a와 &a의 시작 주소는 같지만, 그 의미는 서로 다릅니다. &a는 배열 전체의 시작주소라 말할 수 있습니다. 그래서 &a+1의 주소는 배열 전체의 크기 다음 위치를 나타냅니다. a+1과 &a+1의 주소가 다름에 주의하여야 합니다. 배열명은 배열의 시..

C_C++ 2022.11.06

(C언어) 배열, 포인터를 이용해서 삼각형 모양의 문자열 출력

#include #include int main() { char s[] = "Hello,C"; int i, len; len = strlen(s); // s의 문자열 길이 for (i = len-1; i >=0; i--) printf("%s\n", s + i); // s 배열명은 이 배열의 시작 주소 } #문자열 #배열 #삼각형 C언어에서 배열명은 배열의 시작 주소를 나타냅니다. printf 함수에서 문자열을 출력할 때, %s 형식은 가리키는 주소부터 '\0'을 만날때까지의 문자열을 출력하게 됩니다. char s[] = "ABC"; printf("%s\n", s); // "ABC" 출력 printf("%s\n", s+1); // "BC" 출력. s+1은 배열의 두 번째 위치의 주소입니다. #include ..

C_C++ 2022.10.25

(C언어) 2차원배열 가로합 세로합 전체합 구하기

#2차원 #배열 #가로합 #세로합 #전체합 [문제] 아래와 같은 모양의 2차원 배열에 값을 초기화하고, 가로의 합, 세로의 합, 전체 합을 구하여 출력하시오. 이 문제를 풀기 위해서는 아래와 같이 행과 열을 한 개씩 더 선언하고, 값을 0으로 초기화합니다. 그리고 배열 전체를 순회하면서 화살표 모양으로 값을 더해주면 됩니다. 완성된 C언어 코드는 다음과 같습니다. #include int main() { int i, j; int arr[4][4] = { {11, 22, 33, 0}, {44, 5, 66, 0}, { 7, 88,999, 0}, { 0, 0, 0, 0 } }; // 합 구하기 for (i = 0; i < 3; i++)// 행 개수 for (j = 0; j < 3; j++)// 열 개수 { ar..

C_C++ 2022.10.25

(C언어) 10진수를 2진수로 변환, 배열 이용

10진수를 2진수로 변환하는 다양한 방법들이 있습니다. 여기서는 배열을 이용해서 변환하는 방법을 사용했습니다. #define _CRT_SECURE_NO_WARNINGS #include int main() { int dec, binary, cnt; int b[33] = { 0 }; printf("10진수를 2진수로 변환\n"); while(1) { printf("\n정수입력(0,음수: 종료) : "); scanf("%d", &dec); // scanf_s("%d", &dec); // Visual Studio if (dec 0) { binary = dec % 2; b[i] = binary; dec = dec / 2; i++; } cnt = i - 1; for (i = cnt; i >= 0; i--) prin..

C_C++ 2022.10.05
반응형