본문 바로가기

C++

박시현 2주차 C++프로그래밍 과제

C++프로그래밍

2주차 과제

 

 

 

 

 

과 목 명 : C++프로그래밍

담당교수 : 한성현 교수님

학 과 : 컴퓨터소프트웨어학과

학 년 : 1학년

학 번 : 2024001684

이 름 : 박시현

제 출 일 : 2024 9월 9일

perplexity가 정리한 C언어와 C++언어의 장단점과 사용분야
출처:한성현 교수님의 강의자료
C언어
C++언어
두 언어의 hello를 출력하는 방법
using namespace 사용 예시
3번째 cout 사용법
출처:한성현 교수님의 강의자료
출처:한성현 교수님의 강의자료
위 C언어 소스를 C++언어로 변환
출처:한성현 교수님의 강의자료

---------------------------C 스타일---------------------------

#include <stdio.h>
int main() {
int age;
printf("당신의 나이를 입력하세요: ");
scanf("%d", &age);
printf("당신의 나이는 %d살 입니다.\n", age);
return 0;
}

-------------------------------------------------------------------

---------------------------C++ 스타일---------------------------

#include <iostream>
int main() {
int age;
std::cout << "당신의 나이를 입력하세요: ";
std::cin >> age;
std::cout << "당신의 나이는 " << age << "살 입니다." << std::endl;
return 0;
}

----------------------------------------------------------------------

결과
출처:한성현 교수님의 강의자료

---------------------------C++ 스타일---------------------------

#include <iostream>
int main()
{
int num1, num2;
num1 = 100;
num2 = -300;
std::cout << "두 수의 합은 " << num1 + num2 << "입니다." << std::endl;
return 0;
}

----------------------------------------------------------------------

출처:한성현 교수님의 강의자료
출처:한성현 교수님의 강의자료
이스케이프 시퀀스를 사용하는 프로그래밍 언어들

 

출처:한성현 교수님의 강의자료
출처:한성현 교수님의 강의자료
출처:한성현 교수님의 강의자료
출처:한성현 교수님의 강의자료
출처:한성현 교수님의 강의자료
출처:한성현 교수님의 강의자료

전처리기는 컴파일하기 전에 수행한다

출처:한성현 교수님의 강의자료
출처:한성현 교수님의 강의자료

프로그래머가 만든 걸 포함 시킬 땐 #include "파일명"

표준 헤더 파일을 포함 시킬 땐 #include <파일명>

출처:한성현 교수님의 강의자료

가장 높은 우선순위를 가진 것은 ()이다.

C,C++,Java,Python에서 사용하는 연산자의 우선순위
출처:한성현 교수님의 강의자료
출처:한성현 교수님의 강의자료

++와 --는 위치에 따라 증가나 감소 할 때가 바뀐다.

출처:한성현 교수님의 강의자료
프로그래밍 언어별 cast연산자 예시
출처:한성현 교수님의 강의자료
?:를 사용하는 모든 프로그래밍 언어 목록
일부 예시
출처:한성현 교수님의 강의자료

---------------------------혼합 대입 연산자---------------------------

#include <stdio.h>
int main(void)
{
int a = 5;
printf("%d\n", a);
a = a + 5; printf("%d\n", a);
a += 5; printf("%d\n", a);
a -= 5; printf("%d\n", a);
a *= 5; printf("%d\n", a);
a /= 2; printf("%d\n", a);
a *= a + 5; printf("%d\n", a);
//a = a*(a+5)
return 0;
}

------------------------------------------------------------------------------

출처:한성현 교수님의 강의자료
프로그래밍 언어의 관계 비교 연산자를 모은 표
출처:한성현 교수님의 강의자료
프로그래밍 언어별 논리 연산자
출처:한성현 교수님의 강의자료
프로그래밍 언어별 비트 연산자
출처:한성현 교수님의 강의자료
출처:한성현 교수님의 강의자료

---------------------------수업 내용 요약---------------------------

#include <stdio.h>
#include <stdbool.h> // C99 이상에서 bool 타입 사용을 위해
#define PI 3.14159
#define MAX_SIZE 100
#define DEBUG
// 사용자 정의 자료형
typedef struct {
int x;
int y;
} Point;
// 전역 변수
int globalVariable = 10;
// 함수 선언
void demonstrateOperators();
int main() {
// 식별자와 변수
int age = 25;
float _temperature = 36.5f;
char userName123[20] = "John Doe";
// 상수
const int DAYS_IN_WEEK = 7;
// 자료형
int i = 10;
float f = 3.14f;
double d = 3.14159;
char ch = 'A';
bool b = true; // C99 이상
Point p = {5, 10};
// 변수의 범위와 수명
static int staticVar = 0;
// 전처리기 조건부 컴파일
#ifdef DEBUG
printf("Debug mode is on.\n");
#endif
// 출력
printf("globalVariable: %d\n", globalVariable);
printf("age: %d\n", age);
printf("_temperature: %.1f\n", _temperature);
printf("userName123: %s\n", userName123);
printf("DAYS_IN_WEEK: %d\n", DAYS_IN_WEEK);
printf("PI: %.5f\n", PI);
printf("Point p: (%d, %d)\n", p.x, p.y);
// 함수 호출
demonstrateOperators();
return 0;
}
// 함수 정의
void demonstrateOperators() {
int a = 10, b = 3;
// 산술 연산자
printf("a + b = %d\n", a + b);
printf("a - b = %d\n", a - b);
printf("a * b = %d\n", a * b);
printf("a / b = %d\n", a / b);
printf("a %% b = %d\n", a % b);
// 관계 연산자
printf("a > b: %d\n", a > b);
printf("a <= b: %d\n", a <= b);
// 논리 연산자
printf("(a > 5) && (b < 5): %d\n", (a > 5) && (b < 5));
printf("(a < 5) || (b > 5): %d\n", (a < 5) || (b > 5));
printf("!(a == b): %d\n", !(a == b));
// 비트 연산자
printf("a & b = %d\n", a & b);
printf("a | b = %d\n", a | b);
printf("a ^ b = %d\n", a ^ b);
printf("~a = %d\n", ~a);
printf("a << 1 = %d\n", a << 1);
printf("a >> 1 = %d\n", a >> 1);
// 대입 연산자
int c = a;
c += b;
printf("c after c += b: %d\n", c);
// 조건 연산자
int max = (a > b) ? a : b;
printf("Max of a and b: %d\n", max);
}

------------------------------------------------------------------------------