반응형

C_C++ 325

(C언어) 구조체를 이용한 성적처리 프로그램, 총점 평균 석차 구하기

C언어에서 구조체를 이용해서 성적처리를 하는 프로그램입니다. 데이터를 키보드로 입력하도록 했으면 번호, 이름, 국어점수, 영어점수, 수학점수를 입력하면 총점, 평균,석차를 구해서 출력해 줍니다. 인원수는 아래와 같이 define으로 정의했으므로, 임으로 인원수를 변경해서 사용하면 좋습니다. #define N 5 구조체는 다음과 같이 정의했습니다. // Define the structure for a student struct Student { int number; char name[20]; int koreanScore; int englishScore; int mathScore; int totalScore; float averageScore; int rank; }; C언어 코드는 다음과 같습니다. #def..

C_C++ 2024.01.10

(C/C++) 카운트다운 게임: 정해진 시간 이내에 숫자 맞히기

카운트다운 게임은 일반적으로 특정 숫자에서 시작하여 1씩 감소시키면서 플레이어가 정해진 시간 안에 특정 목표 숫자에 도달하는 게임입니다. 컴퓨터가 시작 숫자를 1에서 10까지의 범위에서 무작위로 선택하고, 사용자가 1을 더하거나 빼는 입력을 받아 목표 숫자에 도달하도록 하는 간단한 카운트다운 게임을 구현한 것입니다. 게임의 제한 시간은 30초로 설정되어 있습니다. 필요에 따라 목표 숫자와 시간 제한을 조절하여 사용할 수 있습니다. 여기에서는 C언어와 C++ 언어의 코드가 있으며, 아래쪽에 파이썬 코드의 링크가 있습니다. C언어 #define _CRT_SECURE_NO_WARNINGS // Visual Studio #include #include #include void countdown_game(int ..

C_C++ 2024.01.06

(C/C++) 배열에서 정렬하기 않고 최대값, 두 번째로 큰 값 구하기

1차원 배열에서 정렬을 사용하지 않고, 최대값과 2번째로 큰 값을 찾는 프로그램은 C언어와 C++ 언어로 작성했습니다. 1차원 배열은 10개의 요소를 갖는 크기이며, 랜덤하게 0~100까지의 수를 채우도록 했습니다. C언어 #include #include #include #define N 10 int main() { int n; // 배열의 크기 int arr[N] = { 0 }; // 난수 발생기를 시간에 따라 초기화 srand(time(NULL)); // 배열에 랜덤한 정수값 채우기 for (int i = 0; i < N; i++) { arr[i] = rand() % 101; // 0~100사이의 랜덤한 정수값 생성 } // 채워진 배열 출력 for (int i = 0; i < N; i++) { pr..

C_C++ 2023.12.30

(C언어) 삼각형의 종류 판단하기: 직각, 둔각, 예각 삼각형

C 언어를 이용하여 세 개의 정수를 이용하여 직각 삼각형, 둔각 삼각형, 예각 삼각형을 판단하는 프로그램입니다. 세 변의 길이를 입력 받아 이 삼각형들 중 어떤 형태인지를 판단하는 것입니다. 피타고라스의 정리를 사용하여 직각 삼각형을 판단하고, 세 변의 길이를 비교하여 둔각과 예각 삼각형을 구분합니다. 무한 루프를 돌며, 입력 값이 모두 0이면 프로그램을 종료합니다. 세 변의 길이를 이용해서 판단하기 세 각의 각도를 이용해서 판단하기 1. 세 변의 길이를 이용해서 판단하기 #define _CRT_SECURE_NO_WARNINGS #include int main() { int a, b, c; while (1) { // 사용자로부터 세 변의 길이를 입력 받음 printf("세 변의 길이를 입력하세요: ");..

C_C++ 2023.12.14

(C++) 숫자 맞추기 게임: 클래스 이용

클래스를 이용해서 간단한 숫자 맞추기 게임을 만들었습니다. 컴퓨터터 1부터 100까지의 숫자를 무작위로 생성하고, 이 숫자를 맞추는 프로그램입니다. 이 프로그램은 NumberGuessingGame이라는 클래스를 사용하여 게임을 구현합니다. 무작위로 생성한 숫자를 맞추는 과정은 playGame 메서드에서 처리되고, 사용자로부터 숫자를 입력받는 부분은 getUserGuess 메서드에서 처리됩니다. 사용자가 추측한 숫자를 평가하고 힌트를 주는 부분은 checkGuess 메서드에서 수행됩니다. #include #include #include class NumberGuessingGame { private: int targetNumber; int userGuess; public: NumberGuessingGame(..

C_C++ 2023.12.07

(C++) 클래스 기초: 차량 정보 표현하기

C++ 언어, 클래스를 표현하는 기본 문법으로 차량 정보를 표현했습니다. 차량 정보는 제조업체명, 모델, 생산년도, 주행 거리를 표현합니다. 생성자를 통해 차량을 초기화하고, Getter 및 Setter를 통해 속성을 읽고 쓸 수 있습니다. displayInfo 함수는 차량 정보를 출력하고, drive 함수는 주행 후 주행거리를 업데이트합니다. #include #include using namespace std; class Car { private: string make; // 제조업체 string model; // 모델 int year; // 생산년도 double mileage; // 주행거리 public: // 생성자 Car(string make, string model, int year, doubl..

C_C++ 2023.12.03

(C언어) XOR 비트 연산자를 이용한 암호화 복호화

C언어의 비트 XOR(^) 연산자를 이용해서 간단하게 문자열을 암호화하고 다시 복호화 할 수 있습니다. 이 예에서는 간단한 대칭 키 알고리즘인 기본 XOR 암호화 알고리즘을 사용합니다. 이 예에서 xor_encrypt_decrypt 함수는 제공된 키를 사용하여 메시지의 각 문자에 대해 XOR 암호화 또는 복호화를 수행합니다. XOR 암호화는 대부분의 실제 응용 프로그램에서는 안전하지 않으며, 교육 목적으로만 사용하는 것이 좋습니다. #include #include // Function to perform XOR encryption or decryption void xor_encrypt_decrypt(char* message, char key) { size_t len = strlen(message); fo..

C_C++ 2023.11.27

(C언어) ltrim(), rtrim() 함수 구현: 문자열에서 앞쪽 뒤쪽 공백 제거

문자열에서 앞쪽의 공백과 뒤쪽의 공백을 제거하는 C언어 코드입니다. ltrim(): 앞쪽(왼쪽)의 공백 제거 rtrim(): 뒤쪽(오른쪽)의 공백 제거 #include #include #include void ltrim(char* str) { int start = 0; // 공백 제거 시작 위치 찾기 while (isspace(str[start])) { start++; } // 문자열 복사하여 공백 제거 for (int i = start; i = 0 && isspace(str[end])) { end--; } // 끝에 널 종료 문자 추가하여 문자열의 끝 표시 str[end + 1] = '\0'; } int main() { char myString[] = " Hello, World! "; char mySt..

C_C++ 2023.11.24

(C언어) trim() 함수 구현: 문자열에서 양쪽 공백 제거하기

아래의 코드는 문자열에서 양쪽 공백을 제거하는 trim() 함수를 구현한 것입니다. C언어 코드 #include #include #include void trim(char* str) { int start = 0, end = strlen(str) - 1; // 공백 제거 시작 위치 찾기 while (isspace(str[start])) { start++; } // 공백 제거 끝 위치 찾기 while (end > start && isspace(str[end])) { end--; } // 문자열 복사하여 공백 제거 for (int i = start; i

C_C++ 2023.11.24
반응형