반응형

C_C++ 326

(C언어) 이진 파일(binary file) 복사하기

2진 파일을 복사하는 C언어 코드입니다. 원본 파일을 읽어서 버퍼에 저장하고, 버퍼에 저장된 내용을 파일에 저장합니다. fopen 함수는 파일을 열었을 때, 오류가 발생하면 NULL을 반환합니다. #include #define BUFFER_SIZE 1024 int main() { FILE *sourceFile, *targetFile; char buffer[BUFFER_SIZE]; size_t bytesRead; // 소스 파일 열기 sourceFile = fopen("abc.exe", "rb"); if (sourceFile == NULL) { printf("abc.exe 파일을 열 수 없습니다.\n"); return 1; } // 저장할 파일 열기 targetFile = fopen("bcd.exe", "..

C_C++ 2023.05.17

(C언어) 함수 포인터 예제

다음은 함수 포인터를 사용하는 간단한 C언어 예제입니다. #include // 두 정수를 더하는 함수 int add(int a, int b) { return a + b; } // 두 정수를 빼는 함수 int subtract(int a, int b) { return a - b; } int main() { int (*operation)(int, int); // 함수 포인터 선언 // 덧셈 함수를 가리키는 함수 포인터 변수 설정 operation = &add; printf("2 + 3 = %d\n", operation(2, 3)); // 뺄셈 함수를 가리키는 함수 포인터 변수 설정 operation = &subtract; printf("5 - 1 = %d\n", operation(5, 1)); return 0..

C_C++ 2023.05.14

(C언어) BMI 체질량지수 계산하기

BMI 체질량지수. Body Mass Index. 體質量指數. 키와 몸무게를 이용해서 계산한 대략적인 체질량 지수이다. 다음은 체질량지수를 계산하는 C언어 코드입니다. #define _CRT_SECURE_NO_WARNINGS #include int main() { double height, weight, bmi; printf("키를 입력하세요 (단위: cm): "); scanf("%lf", &height); printf("몸무게를 입력하세요 (단위: kg): "); scanf("%lf", &weight); height = height / 100; // cm를 m로 환산 bmi = weight / (height * height); printf("BMI 지수: %.2f\n", bmi); if (bmi < 1..

C_C++ 2023.05.03

산술평균 기하평균 조화평균을 구하는 C언어 코드

산술평균 Arithmetic mean 합을 개수로 나누어서 구할 수 있다. 기하 평균 Geometric mean 변량을 모두 곱해서 거듭제곱근을 취해서 얻는 평균이다. 조화 평균 Harmonic mean 변량들의 역수의 산술평균을 구한 후 그것을 역수로 취한 평균이다. 다음은 산술평균, 기하평균, 조화평균을 구하는 C언어 코드입니다. #include #include // 산술 평균 double arithmetic_mean(int arr[], int size) { int sum = 0; for (int i = 0; i < size; i++) { sum += arr[i]; } return (double)sum / size; } // 기하 평균 double geometric_mean(int arr[], int..

C_C++ 2023.05.02

(C언어) 친화수 판별하는 프로그램

두 수의 쌍이 있을 때, 각각의 수의 약수를 모두 더한 값이 서로 같으면 친화수입니다. 예를 들어, 220과 284는 친화수입니다. 220의 약수는 1, 2, 4, 5, 10, 11, 20, 22, 44, 55, 110이며, 이들을 모두 더한 값은 284입니다. 284의 약수는 1, 2, 4, 71, 142이며, 이들을 모두 더한 값은 220입니다. 친화수의 예 220과 284 1184와 1210 2620과 2924 5020과 5564 6232와 6368 아래는 두 수를 입력받아 친화수인지 판별하는 C언어 코드입니다. #define _CRT_SECURE_NO_WARNINGS #include // 두 수의 약수의 합을 구하는 함수 int get_divisor_sum(int num) { int sum = 0..

C_C++ 2023.05.01

(C언어) 삽입 정렬 insertion sort

C언어로 구현한 삽입 정렬의 예제입니다. 25, 24, 46, 61, 13, 3 - 이와 같은 데이터가 배열에 기억되어 있다면, 2 번째 데이터부터 앞 쪽으로 진행하면서 삽입될 위치를 찾아서 해당 위치에 삽입하는 방식으로 정렬합니다. #include // 삽입 정렬 void insertion_sort(int arr[], int size) { int i, j, temp; for (i = 1; i = 0 && arr[j] > temp) { arr[j + 1] = arr[j]; j--; } arr[j + 1] = temp; } } void print(int arr[], int size) { for (int i = 0; ..

C_C++ 2023.04.29

(C언어) 피타고라스 정리: 직각삼각형의 세 변의 길이 구하기

x, y, z의 세 변의 길이가 1~20일때, 직각 삼각형이 되기 위한 x, y, z의 길이를 모두 나타내시오. 피타고라스의 정리 직각삼각형의 3개의 변을 a, b, c라 하고 c에 대한 각이 직각일 때 a²+b²=c²의 관계를 나타내는 정리이다. 즉, 두 변의 길이의 제곱의 합(a²+b²)은 직각삼각형의 빗변의 길이의 제곱(c²)과 같다는 것이다. [네이버 지식백과] 피타고라스의 정리 (시사상식사전, pmg 지식엔진연구소) #include int main() { int x, y, z, d; for (x = 1; x

C_C++ 2023.04.26
반응형