c++ 기본  소스

#include <iostream>

int main()
{
    std::cout << "Hello World!\n";
}

*일반 변수는 . / 포인터 변수는 ->

#include <iostream>
struct Man {
    int age; //멤버
    double weight;
    //int getAge() { return age; }//멤버함수
   // void setAge(int a) { age = a; } //c언어에서는 구조체에 변수만 가능, c++에서는 구조체 안에 함수도 넣을 수 있다
};
int main()
{
   
    Man han = { 1, 3.5 }, han1; //c++은 struct 생략 가능(c언어는 생략 불가능)
    han1 = han; //대입하면 멤버들이 모두 복사됨
    std::cout << han1.age << "   " << han1.weight << std::endl;
    std::cout << han.age << "   " << han.weight << std::endl;
  // Man *kim;
  // kim->age = 2;
  // std::cout << kim->age;
    han.age = 10;
    han.weight = 30.5;
    std::cout << han.age <<"   "<< han.weight << std::endl;;
}

*영어로도 기억


*자료와 처리하는 동작이 나눠져 있다


*객체지향프로그래밍 (OOP)

*객체에는 data와 methods가 있다

*객체지향 프로그래밍의 3가지 특징

- 캡슐화

- 상속성

- 다형성


 

*구조적에서는 따로 / 객체지향에서는 자료와 처리하는 동작을 class로 묶는다


*클래스는 설계도이고 객체는 설계도로 만들어진 집이다./ 객체 Instance


* 클래스 설계도로부터 만들어진 객체를  Instance라고 한다

* 클래스와 객체 ex) 고양이: 우리집 3살 해피 (객체는 구체적이고 실제 존재하는 하나)


* class만드는 것이 캡슐화시키는 것이다


상속(inheritance)

 파생 클래스(derived class), 자식 클래스(child class, subclass) : 상위 클래스의 속성을 상속받은 하위 클래스

 기본 클래스(base class), 부모 클래스(parent class, superclass) : 상위 클래스


다형성(polymorphism)

-이름을 하나만 쓴다


*클래스 다이어그램 그리기

고양이
<특성 멤버 변수>
털 색, 눈 색, 고양이 이름, 나이, 품종, 주인 이름
<행위 멤버 함수>
이름 짓기, 이름 변경하기, 이름 알아내기,
1년이 지나면 한살 증가, 태어나면 1살이다, 
점프를 잘한다, 쥐를 는다

 

 


#include <iostream>
class Man {
//private:     //private:을 쓰면 밑에 있는 변수들은 class안에서만 접근할 수 있다
public:    //public:을 쓰면밑에 나오는 변수들은 어디에서나 접근할 수 있다
    int age; //멤버
    double weight;
    
};
int main()
{
   
    Man han = { 1, 3.5 }, han1; 
    han1 = han;
    std::cout << han1.age << "   " << han1.weight << std::endl;
    std::cout << han.age << "   " << han.weight << std::endl;
  
    han.age = 10;
    han.weight = 30.5;
    std::cout << han.age <<"   "<< han.weight << std::endl;;
}

#include <iostream>
class Man {

private: //캡슐화, 감춘다. 클래스 내에서만 접근 가능
    int age; //멤버
    double weight;
public: //어디서나 접근 가능
    int getAge() { //출력, 리턴, getAge는 age가 튀어나오는 함수
        return age;
    }
    void setAge(int a) { //입력, 대입
        age = a;

    }
    void run() {
        std::cout << "달린다~~~\n";
    }
};
int main()
{

    Man han;
    han.setAge(3);  //han.age는 불가능

    std::cout << han.getAge() << std::endl;;
    han.run();
}

출처: 1학년 2학기 수업자료 /한성현 교수님  smile han https://www.youtube.com/@smilehan8416

'C++프로그래밍' 카테고리의 다른 글

C++ 프로그래밍 9주차 과제  (1) 2023.11.01
C++ 프로그래밍 6주차 과제  (0) 2023.10.18
C++ 프로그래밍 4주차 과제  (0) 2023.09.27
C++프로그래밍 3주차 과제  (1) 2023.09.20
c++프로그래밍 2주차 과제  (1) 2023.09.14

함수를 생성하고 사용하는 방법

<c >

#include <stdio.h>

int add(int a, int b) {
    return a + b;
}

int main() {
    int result = add(5, 3);
    printf("결과: %d\n", result);
    return 0;
}

<c++>

#include <iostream>

int add(int a, int b) {
    return a + b;
}

int main() {
    int result = add(5, 3);
    std::cout << "결과: " << result << std::endl;
    return 0;
}

<java>

public class Main {

    public static int add(int a, int b) {
        return a + b;
    }

    public static void main(String[] args) {
        int result = add(5, 3);
        System.out.println("결과: " + result);
    }
}

< JavaScript>

function add(a, b) {
   return a + b;
}

var result = add(5, 3);
console.log("결과: " + result);

<c#>

using System;

class Program {

   static int Add(int a, int b){
      return a+b;
   }

   static void Main() {
      var result = Add(5 ,3 );
      Console.WriteLine($"결과: {result}");
   }
}

 

 

* 하나의 프로그램에서 main 함수는 정확히 한 번만 정의되어야 한다

int main1()
{
    std::cout << "Hello World!\n";
}
int main()
{
    std::cout << "Hello World!\n";
}
void main1()
{
    std::cout << "Hello World!!!!\n";
}
int main()
{
    main1();
    std::cout << "Hello World!\n";
}

<1부터6까지 랜덤한 값을 발생시켜주는 c 언어 소스>

#include <stdio.h> // 표준 입출력 함수를 사용하기 위한 헤더 파일
#include <stdlib.h> // rand() 함수를 사용하기 위한 헤더 파일
#include <time.h> // time() 함수를 사용하기 위한 헤더 파일

int main() {
    srand(time(NULL)); // 난수 생성기 초기화. 현재 시간을 기반으로 초기화하여 매번 다른 결과가 나오도록 함

    int randomValue = rand() % 6 + 1; // rand() 함수로 난수 생성 후, 이를 6으로 나눈 나머지에 1을 더함으로써 1~6 사이의 숫자를 얻음

    printf("생성된 랜덤 값은 %d입니다.
", randomValue); // 생성된 랜덤값 출력

    return 0;
}

#include <iostream>
void display(void) //정의
{
    std::cout << "김다현\n"; 
}
int main()
{
    display(); //호출, call
    std::cout << "Hello World!\n";
}
#include <iostream>

void display(void); //선언, 프로토타입(prototype), 원형

int main()
{
    display(); //호출, call
    std::cout << "Hello World!\n";
}
void display(void) //정의
{
    std::cout << "김다현\n";
}

*선언이 먼저!

#include <iostream>

void display(void); //선언, 프로토타입(prototype), 원형
void display1(void);
int main()
{
    display(); //호출, call
    std::cout << "Hello World!\n";
    display1();
}
void display1(void) //정의
{
    std::cout << "ㅎㅎㅎㅎ\n";
}
void display(void) //정의
{
    std::cout << "김다현\n";
}
#include <iostream>

void display(void); //선언, 프로토타입(prototype), 원형
void doubleNum(int x);
int main()
{
    display(); //호출, call
    std::cout << "Hello World!\n";
    doubleNum(10);
}
void doubleNum (int x)
{
    std::cout << x * 2;
}
void display(void) //정의
{
    std::cout << "김다현\n";
}
#include <iostream>

void display(void); //선언, 프로토타입(prototype), 원형
void doubleNum(int x);
int doubleNumReturn(int x);
int main()
{
    display(); //호출, call
    std::cout << "Hello World!\n";
    doubleNum(10);
    std::cout << doubleNumReturn(20);
}
int doubleNumReturn(int x)
{
    return x * 2;
}
void doubleNum (int x)
{
    std::cout << x * 2;
}
void display(void) //정의
{
    std::cout << "김다현\n";
}

*자판기 함수

#include <iostream>

void display(void); //선언, 프로토타입(prototype), 원형
void doubleNum(int x);
int doubleNumReturn(int x);
int add(int x, int y);
char vending(int x);
int main()
{
    display(); //호출, call
    std::cout << "Hello World!\n";
    doubleNum(10);
    std::cout << doubleNumReturn(20);
    std::cout << add(2, 3);
    std::cout << vending(1);
}
char vending(int x)
{
    if (x == 1) return 'A';
    else return 'B';
}

int add(int x, int y) {
    return x + y;
}
int doubleNumReturn(int x)
{
    return x * 2;
}
void doubleNum (int x)
{
    std::cout << x * 2;
}
void display(void) //정의
{
    std::cout << "김다현\n";
}

ctrl+m+o

ctrl+m+l

*문자열을 리턴할때는 const char*

#include <iostream>

void display(void); //선언, 프로토타입(prototype), 원형
void doubleNum(int x);
int doubleNumReturn(int x);
int add(int x, int y);
char vending(int x);
const char* vending1(int x);
int main()
{
    display(); //호출, call
    std::cout << "Hello World!\n";
    doubleNum(10);
    std::cout << doubleNumReturn(20);
    std::cout << add(2, 3);
    std::cout << vending(1);
    std::cout << vending1(1);
}
const char* vending1(int x)
{
    if (x == 1) return "커피";
    else return "유자차";
}
char vending(int x)
{
    if (x == 1) return 'A';
    else return 'B';
}

int add(int x, int y) {
    return x + y;
}
int doubleNumReturn(int x)
{
    return x * 2;
}
void doubleNum (int x)
{
    std::cout << x * 2;
}
void display(void) //정의
{
    std::cout << "김다현\n";
}

#include <iostream>

void display(void); //선언, 프로토타입(prototype), 원형
void doubleNum(int x);
int doubleNumReturn(int x);
int add(int x, int y);
char vending(int x);
const char* vending1(int x);
std:: string vending2(int x);
int main()
{
    display(); //호출, call
    std::cout << "Hello World!\n";
    doubleNum(10);
    std::cout << doubleNumReturn(20);
    std::cout << add(2, 3);
    std::cout << vending(1);
    std::cout << vending1(1);
    std::cout << vending2(1);
}
std:: string vending2(int x) //시험
{
    if (x == 1) return "aaa";
    else return "bbb";
}
const char* vending1(int x)
{
    if (x == 1) return "커피";
    else return "유자차";
}
char vending(int x)
{
    if (x == 1) return 'A';
    else return 'B';
}

int add(int x, int y) {
    return x + y;
}
int doubleNumReturn(int x)
{
    return x * 2;
}
void doubleNum (int x)
{
    std::cout << x * 2;
}
void display(void) //정의
{
    std::cout << "김다현\n";
}
#include <iostream>
struct Man {
	int age; //멤버
	double weight; //멤버

};
int main()
{
	int x = 10;
	std::cout << x << std::endl;

	struct Man kdh;
	kdh.age = 10;
	std::cout << kdh.age << std::endl;
	kdh.weight = 20.5;
	std::cout << kdh.weight << std::endl;
}

*c언어에서는 struct 생략 불가, 근데 c++은 생략 가능 *시험

#include <iostream>
struct Man {
	int age; //멤버
	double weight; //멤버

};
int main()
{
	int x = 10;
	std::cout << x << std::endl;

	Man kdh; //c언어에서는 struct 생략 불가, 근데 c++은 생략 가능 *시험
	kdh.age = 10;
	std::cout << kdh.age << std::endl;
	kdh.weight = 20.5;
	std::cout << kdh.weight << std::endl;
}
#include <iostream>
struct Man {
	int age; //멤버
	double weight; //멤버

};
int main()
{


	Man kdh = { 1, 3.5 };
	std::cout << kdh.age <<"  "<<kdh.weight<< std::endl;
	kdh.age = 10;
	
	kdh.weight = 20.5;
	std::cout << kdh.age << "  " << kdh.weight << std::endl;
}

*시험

#include <iostream>
struct Man {
	int age; //멤버
	double weight; //멤버
	std::string name;

};
int main()
{


	Man kdh = { 1, 3.5,"aaaa"};
	std::cout << kdh.name << kdh.age <<"  "<<kdh.weight<< std::endl;
	kdh.age = 10;
	kdh.weight = 20.5;
	kdh.name = "현";
	std::cout << kdh.name << kdh.age << "  " << kdh.weight << std::endl;
}

//초기화를 할때는 중괄호를 열고 닫기를 해서 차례대로 멤버들을 초기화 한다

c언어의 구조체는 멤버 변수만!

c++ class는 멤버 함수도!  (c++의 구조체= 확장자cpp)

구조체(struct) 를 활용한 c++ 예시

#include <iostream> // 표준 입출력 함수를 사용하기 위한 헤더 파일

// 'Person'이라는 이름의 구조체 정의
struct Person {
    std::string name; // 이름을 저장하는 문자열 변수
    int age; // 나이를 저장하는 정수형 변수
};

int main() {
    Person person1; // 'Person' 구조체 타입의 'person1' 객체 생성

    person1.name = "홍길동"; // 'person1' 객체의 'name' 멤버에 값을 할당
    person1.age = 30; // 'person1' 객체의 'age' 멤버에 값을 할당

    std::cout << "이름: " << person1.name << ", 나이: " << person1.age << std::endl; 
    // 홍길동 객체의 이름과 나이 출력. 출력 결과: 이름: 홍길동, 나이: 30

    return 0;
}

 출처: (1학년 2학기 수업자료)한성현 교수님 smile han https://www.youtube.com/@smilehan8416

'C++프로그래밍' 카테고리의 다른 글

C++ 프로그래밍 9주차 과제  (1) 2023.11.01
C++ 프로그래밍 6주차 과제  (0) 2023.10.18
C++프로그래밍 5주차 과제  (1) 2023.10.11
C++프로그래밍 3주차 과제  (1) 2023.09.20
c++프로그래밍 2주차 과제  (1) 2023.09.14

sizeof 연산자 예(C프로그래밍)

#include <stdio.h>
int main(void)
{
	int x;
	int y[10];
	printf("%d\n", sizeof("I love you!"));//12
	printf("%d\n", sizeof("대한"));// 5(cp949) or 7(utf-8)
	printf("%d\n", sizeof(int));// 4 
	printf("%d\n", sizeof(x));// 4, sizeof x라고 써도 됨 
	printf("%d\n", sizeof(y));// 40, sizeof y라고 써도 됨 
	return 0;
}

sizeof 연산자 예(C++ 프로그래밍)

 

#include <iostream>

int main() {
    int x;
    int y[10];
    std::cout << sizeof("I love you!") << std::endl; // 13 in C++
    std::cout << sizeof("대한") << std::endl; // It depends on encoding
    std::cout << sizeof(int) << std::endl; // 4 
    std::cout << sizeof(x) << std::endl; // 4, 'sizeof x' is also fine 
    std::cout << sizeof(y) << std::endl; // 40, 'sizeof y' is also fine 
    return 0;
}

혼합 대입 연산자

x=x+1;

x+1;

x++;

++x;

시프트 연산자 예 (c 프로그래밍)

#include <stdio.h>
int main(void)
{
  printf("%d\n",90<<1); //180
  printf("%d\n",90*2); //180
  printf("%d\n",90<<2); //360
  printf("%d\n",90<<3); //720 
  printf("%d\n",90<<4);//1440 
  printf("%d\n",90>>1); //45
  printf("%d\n",90/2); //45
  printf("%d\n",90>>2); //22
  printf("%d\n",90>>3); //11
  return 0;
}

시프트 연산자 예 (c ++프로그래밍)

#include <iostream>

int main() {
    std::cout << (90<<1) << std::endl; //180
    std::cout << (90*2) << std::endl; //180
    std::cout << (90<<2) << std::endl; //360
    std::cout << (90<<3) << std::endl; //720 
    std::cout << (90<<4) << std::endl;//1440 
    std::cout << (90>>1) << std::endl; //45
    std::cout  << (90/2)  <<std::endl; //45
    std::cout <<(90>>2)<<std :: endl ;//22 
  	std :: cout<<( 90 >>3 )<<std :: endl ;//11 
  	return 0;
}

시프트 연산자는 2의 n으로 곱이나 나누기가 되는 연산자 인데 나중에  c++ cout를 만나면 다른 의미로 쓰인다

 

c,c++,자바 스크립트 ,c#,자바 연산자의 공통점

 

 

if문 예제 1

#define _CRT_SECURE_NO_WARNINGS //Visual Studio에서만 사용
#include <stdio.h>
int main(void)
{
	int score;
	printf("당신의 점수를 입력하고 Enter를 누르세요=");
	scanf("%d", &score);
	if (score < 60) printf("60점 미만이므로 재수강해야 합니다.\n");
	//if문 4가지 방법으로 만들어보기 
	return 0;
}

if문 다음에 나오는 조건은 소괄호를 사용하고 실행문은 중괄호를사용  

if~else문 예제 2 : 60 미만 판단, 양자택일

#define _CRT_SECURE_NO_WARNINGS //Visual Studio에서만 사용
#include <stdio.h>
int main(void)
{
	int score;
	printf("당신의 점수를 입력하고 Enter를 누르세요=");
	scanf("%d", &score);
	if (score < 60) {
		printf("60점 미만이므로 재수강해야 합니다.\n");

	}
	else {
		printf("60점 이상이므로 Pass입니다.\n");
	}
	return 0;
}

 

다중 if~else문 1 : 주민등록번호로 성별 판단

#define _CRT_SECURE_NO_WARNINGS //Visual Studio에서만 사용
#include <stdio.h>
int main(void)
{
int num;
printf("당신의 주민등록번호 뒷 자리의 첫 번째 숫자를 입력하세요=");
scanf("%d", &num);
if (num == 1 || num == 3)
printf("당신은 남성이군요!\n");
else if (num == 2 || num == 4)
printf("당신은 여성이군요!\n");
else
printf("당신은 대한민국 사람이 아니군요!\n");
retu

다중 if~else문 3 : 숫자 입력받아 판단

#define _CRT_SECURE_NO_WARNINGS //Visual Studio에서만 사용
#include <stdio.h>
int main(void)
{
int value;
printf("1~3까지의 수를 입력하세요:");
scanf("%d", &value);
if (value == 1) printf("1을 입력하셨습니다.\n");
else if (value == 2) printf("2를 입력하셨습니다.\n");
else if (value == 3) printf("3을 입력하셨습니다.\n");
else printf("잘못 입력하셨습니다.\n");
return 0;
}

switch∼case문 예제 1 : 다중 if~else와 비교

#define _CRT_SECURE_NO_WARNINGS //Visual Studio에서만 사용
#include <stdio.h>
int main(void)
{
	int value;
	printf("1~3까지의 수를 입력하세요:");
	scanf("%d", &value);
	switch (value) {
	case 1:
		("1을 입력하셨습니다.\n");
		break;
	case 2:
		("2를 입력하셨습니다.\n");
		break;
	case 3:
		("3을 입력하셨습니다.\n");
		break;
	default:
		printf("잘못 입력하셨습니다.\n");
		break;
	
	}
	return 0;
}

이름 10번 출력

#define _CRT_SECURE_NO_WARNINGS //Visual Studio에서만 사용
#include <stdio.h>
int main(void)
{
	int i;
	for (i = 0; i < 10; i++) {
		printf("%2d:김다현\n", i + 1);
	}
	return 0;
}

#include <iostream>
#include <iomanip> //setw()
int main()
{
	for (int i = 1; i <= 10; i++) {
		std::cout << std::setw(2) << i << " : 김다현\n";
	}
}
#include <iostream>
#include <iomanip> //setw()
using namespace std;
int main()
{
	for (int i = 1; i <= 10; i++) {
		cout << setw(2) << i << " : 김다현\n";
	}
}
#include <iostream>
using namespace std;
int main()
{
	for (int i = 1; i <= 10; i++) {
		cout.width(2); //다음에 출력되는 하나(i)를 두칸에 출력
		cout << i << " : 김다현\n";
	}
}
#include <iostream>
int main()
{
	for (int i = 1; i <= 10; i++) {
		std::cout.width(2); //다음에 출력되는 하나(i)를 두칸에 출력
		std::cout << i << " : 김다현\n";
	}
}

switch∼case문 계산기(반복) (c프로그래밍)

#define _CRT_SECURE_NO_WARNINGS //Visual Studio에서만 사용
#include <stdio.h>
int main(void)
{
char op;
int num1, num2;
for (; ; ) //추가
{ //추가
printf("\n덧셈과 뺄셈만 가능합니다\n");
printf("끝내려면 0+0을 입력하세요\n"); //추가
printf("계산하려는 수식(예:10+20)을 입력하세요:");
scanf("%d%c%d", &num1, &op, &num2); //10+20
if (num1 == 0 && num2 == 0) break; //추가
switch (op) {
case '+':
printf("덧셈 결과는 %d입니다.\n", num1 + num2);
break;
case '-':
printf("뺄셈 결과는 %d입니다.\n", num1 - num2);
break;
default:
printf("다시 입력하세요\n");
break;
}// switch~case문 끝
} //추가, for문 끝
return 0;
}

switch∼case문 계산기(반복) (c++프로그래밍)

#include <iostream>
using namespace std;

int main() {
    char op;
    int num1, num2;
    
    for (;;) {
        cout << "\n덧셈과 뺄셈만 가능합니다" << endl;
        cout << "끝내려면 0+0을 입력하세요" << endl;
        cout << "계산하려는 수식(예:10+20)을 입력하세요: ";
        cin >> num1 >> op >> num2; // 10+20
        
        if (num1 == 0 && num2 == 0)
            break;
        
        switch (op) {
            case '+':
                cout << "덧셈 결과는 " << num1 + num2 << "입니다." \n;
                break;
            case '-':
                cout << "뺄셈 결과는 " << num1 - num2 << "입니다." \n;
                break;
            case '*':
                cout << "곱셈 결과는 " << num1 * num2 << "입니다." \n;
                break;
            case '/':
                cout << "나머지 결과는 " << (double)num1 * num2 << "입니다." \n;
                break;
            else
                cout <<"0으로는 나눌 수 없습니다. 다시 입력해주세요\n;";
                default:
                cout<<"\n다시 입력하세요\n";
                break;
        }
    }
    
    return 0;
}

메뉴를 가지고 있는 프로그램의 기본 틀(c프로그래밍)

#include <stdio.h>

int main() {
    int menu;
    
    do {
        printf("\n메뉴\n");
        printf("1: 추가\n");
        printf("2: 삭제\n");
        printf("3: 저장\n");
        printf("원하는 작업을 선택하세요 -> ");
        
        scanf("%d", &menu);
    } while (!(menu >= 1 && menu <= 3));
    
    printf("\n%d를 선택했습니다.\n", menu);
    
    return 0;
}

메뉴를 가지고 있는 프로그램의 기본 틀(c++프로그래밍)

#include <iostream>
using namespace std;

int main() {
    int menu;
    
    do {
        cout << "\n메뉴\n";
        cout << "1: 추가\n";
        cout << "2: 삭제\n";
        cout << "3: 저장\n";
        cout << "원하는 작업을 선택하세요 -> ";
        
        cin >> menu;
    } while (!(menu >= 1 && menu <= 3));
    
    cout << "\n" << menu << "를 선택했습니다.\n";
    
    return 0;
}

출처: (1학년 2학기 수업자료) 한성현 교수님  smile han https://www.youtube.com/@smilehan8416

'C++프로그래밍' 카테고리의 다른 글

C++ 프로그래밍 9주차 과제  (1) 2023.11.01
C++ 프로그래밍 6주차 과제  (0) 2023.10.18
C++프로그래밍 5주차 과제  (1) 2023.10.11
C++ 프로그래밍 4주차 과제  (0) 2023.09.27
c++프로그래밍 2주차 과제  (1) 2023.09.14

프로그래밍 언어의 자료형(data type) : 데이터의 종류를 나타내는 것

 

1. 정수형 (Integer): 정수를 저장하는 데 사용됩니다.

2. 실수형 (Float/Double): 소수점이 포함된 숫자를 저장하는 데 사용됩니다.

3. 문자열 (String): 문자나 문장을 저장하는 데 사용됩니다.

4. 불린 (Boolean): (True) 또는 거짓(False) 값을 저장하는 데 사용됩니다.

5. 배열 (Array): 동일한 타입의 여러 값들을 하나의 변수에서 관리할 수 있게 해줍니다.

6. 객체(Object)/구조체(Structure): 서로 관련된 데이터와 함수(메서드)를 그룹화하여 복잡성을 관리합니다.

7. 튜플(Tuple): 서로 다른 타입의 요소들을 가질 수 있는 컬렉션 형태입니다.

8. 리스트(List)/벡터(Vector): 일련의 항목들을 저장하고, 크기가 동적으로 변할 수 있습니다.

9. 딕셔너리(Dictionary)/해시맵(HashMap): -값 쌍으로 데이터를 저장하고 관리합니다.

 

자료형 C언어 Java C++
정수형(integer) int, short, long byte, short, int, long short, int, long
실수형(Floating point) float, double float, double float, double, long double
문자(Character) char char char, wchar_t
불린(Boolean) - boolean bool
문자열(String) - string(클래스) string(클래스), char 배열

c++

#include <iostream>
using namespace std;
int main()
{
   cout <<"Hello World!\n";
}
#include <iostream>
int main()
{
    std::cout <<"Hello World!\n";
}
#include <iostream>
using std::cout; 
using std::endl;
int main()
{
	cout <<"소프트웨어"<<endl;
	return 0;
}

 나이 출력하기

#include <iostream>
using std::cout;
using std::cin;
int main()
{
	int input;
	cout <<"나이 입력:";
	cin >> input;
	cout <<"당신의 나이는"<<input <<"살 입니다.\n";
	return 0;
}

 

여러 변수 값 출력(printf vs cout)

#include <iostream>
#include <stdio.h>
using namespace std;
int main()
{
	int a, b, c;
	a =100;
	b =200;
	c = a + b;
	printf("%d, %d, %d\n", a, b, c);//C, 함수
	cout << a <<','<< b <<','<< c;//C++, 객체
	return 0;
}
 

숫자 하나를 입력받아 출력

#include <stdio.h>
#include <iostream>
using std::cout;
using std::cin;
int main(void)
{
	int num;
	//printf("숫자 하나를 입력하세요=");
	cout <<"숫자를 입력하세요=";
	//scanf("%d", &num);
	cin >> num;
	//printf("입력받은 수는 %d입니다.\n", num);
	cout <<"입력받은 수는"<<num<<"입니다";
	return 0;
}

 

프로그래밍 언어에서 (), {}, []의 목적과 의미

 

괄호 ():

함수 호출: 예를 들어, C++에서 print()와 같이 함수를 호출할 때 사용

연산자 우선순위: 예를 들어, (2+3) * 4에서 괄호 안의 연산이 먼저 수행

특정 언어의 문법 요소: 예를 들어, Python에서 튜플을 정의하는데 사용

중괄호 {}:

코드 블록: 대부분의 프로그래밍 언어(C++, Java, JavaScript )에서 함수나 제어 구조(if, for문 등)의 범위(scope)을 정의하는데 사용

객체 리터럴: JavaScript 같은 일부 언어에서는 객체를 생성하는데 사용

초기화 리스트: C++에서 배열이나 컨테이너 등을 초기화하는데 사용

대괄호 []:

배열 인덱싱: 대부분의 프로그래밍 언어에서 배열 원소에 접근할 때 사용, 예시로 arr[0]'arr' 배열의 첫 번째 원소를 나타냄

리스트 리터럴: Python과 같은 일부 언어에서는 리스트를 생성하는데 사용

 

 

세미콜론(;)을 문장의 끝으로 사용하는 언어

C

C++

C#

Java

JavaScript

PHP

Swift (하지만, Swift에서는 대부분의 경우 세미콜론을 생략할 수 있습니다.)

Go

식별자/상수/자료형/변수/함수 예제

#include <iostream>
int main(void) //콘솔 기반 C프로그램의 시작점
{ //main()함수의 시작
	int num1, num2; //변수 선언문, 실행문 보다 먼저 씀
	/* 변수명: 영문자(A-Z, a-z), 숫자(0-9), 밑줄(_)로 구성
	변수(variable):프로그램이 실행되는 동안 자료를
	기억시키기 위한 기억장소의 이름 */
	num1 =100; //대문자와 소문자는 다른 변수로 인식
	num2 =-300; //변수에 상수 대입
	//printf("두 수의 합은 %d입니다.\n", num1 + num2);
	 std::cout<<"두 수의 합은 "<<num1 + num2<<"입니다.\n";
	//표준 라이브러리 함수
	return 0;
} //main()함수의 끝
 
 

 

 

자동형 변환

#include <iostream>
using std::cout;
int main()
{
	int a =10;
	cout <<10 /4<<"  "<<10.0 /4 <<"  "<<10 /4.0 <<"  "<<10.0 /4.0;
	
	return 0;
}

증가, 감소 연산자 예

#include <stdio.h>
int main(void)
{
	int a =10, b =10, c =20, d =20;
	int ap, bp, cm, dm;
	ap =++a; // a=a+1; ap=a; ap=11, a=11 
	printf("a=%d, ap=%d\n", a, ap);
	bp = b++; // bp=b; b=b+1; bp=10, b=11 
	printf("b=%d, bp=%d\n", b, bp);
	cm =--c; // c=c-1; cm=c; cm=19, c=19 
	printf("c=%d, cm=%d\n", c, cm);
	dm = d--; // dm=d; d=d-1; dm=20, d=19 
	printf("d=%d, dm=%d\n", d, dm);
	printf("%d\n", dm++);//나중에 증가(후치)
	printf("%d\n", ++dm);//먼저 증가(전치)
	return 0;
}
#include <iostream>
using std::cout;
int main()
{
	cout << 10 << "  " << 10.0 / 4 << "  " << 10 / 4.0 << '\n';
	cout << (double)10/4 << "  " << (double)10/4.0;
	return 0;

}

출처:한성현 교수님 smile han https://www.youtube.com/@smilehan8416

'C++프로그래밍' 카테고리의 다른 글

C++ 프로그래밍 9주차 과제  (1) 2023.11.01
C++ 프로그래밍 6주차 과제  (0) 2023.10.18
C++프로그래밍 5주차 과제  (1) 2023.10.11
C++ 프로그래밍 4주차 과제  (0) 2023.09.27
C++프로그래밍 3주차 과제  (1) 2023.09.20

+ Recent posts