[C++] 특정한 값을 출력하는 구조체를 만들어보자
2022. 6. 2. 18:55ㆍ코딩 1막 <C++개념편>/코딩 1막 <C++응용편>
728x90
1. <몬스터 구조체를 만들고 특정값 출력해보기>
#include <iostream>
#include <string>
using namespace std;
// 구조체 변수 선언
struct Monster
{
string name;
int lv;
int hp;
int damage;
};
struct Computer
{
string name;
int price;
};
// 구조체의 멤버변수들을 출력하는 함수
void PrintInfo(Monster target)
{
cout << "이름 : " << target.name << endl;
cout << "레벨 : " << target.lv << endl;
cout << "체력 : " << target.hp << endl;
cout << "데미지 : " << target.damage << endl;
}
// 구조체의 멤버변수들의 값을 셋팅하는 함수
void SetInfo(Monster* target, string newName, int newLv, int newHp, int newDamage)
{
target->name = newName;
target->lv = newLv;
target->hp = newHp;
target->damage = newDamage;
}
void PrintInfo(Computer target)
{
cout << "이름 : " << target.name << endl;
cout << "가격 : " << target.price << endl;
}
Computer* GetMaxPrice(Computer arr[], string name)
{
for (int i = 0; i < 2; i++)
{
if (arr[i].name == name)
{
return &arr[i];
}
}
}
void main()
{
Monster monsters[] =
{
{ "골렘", 100, 500000, 30000 },
{ "다크나이트", 50, 30000, 1000 },
{ "위자드", 15, 1500, 100 },
{ "슬라임", 5, 500, 50 },
{ "리본돼지", 10, 1000, 80 }
};
PrintInfo(monsters[0]);
SetInfo(&monsters[0], "발락", 120, 900000, 80000);
PrintInfo(monsters[0]);
Computer computers[] =
{
{"A", 1000},
{"B", 2000}
};
cout << "특정값을 서칭하는 함수" << endl;
GetMaxPrice(computers, "B");
PrintInfo(computers[1]);
}
2. <넷플릭스 구조체를 만들고 특정값 출력해보기>
#include <iostream>
#include <string>
using namespace std;
// 과제_ 구조체 변수를 선언
struct Netflix
{
string movie;
string drama;
int people;
};
// 과제_ 구조체 변수를 매개변수로 쓰는 PrintInfo함수 선언 (구조체 멤버변수들을 출력하는 함수)
void PrintInfo(Netflix target)
{
cout << "영화 이름 : " << target.movie << endl;
cout << "드라마 이름 : " << target.drama << endl;
cout << "이용자 수 : " << target.people << endl;
}
// 과제_ 구조체의 포인터변수를 매개변수로 쓰는 SelfInfo함수 선언 (구조체 멤버변수들의 값을 셋팅하는 함수)
void SetInfo(Netflix* target, string newMovie, string newDrama, int newPeople)
{
target->movie = newMovie;
target->drama = newDrama;
target->people = newPeople;
}
// 실습_ 특정한 값을 찾는 함수만들기
Netflix* FindInfo(Netflix netflixs[], string setMovie)
{
for (int i = 0; i < 4; i++)
{
if (netflixs[i].movie == setMovie)
{
return &netflixs[i];
}
}
}
void main()
{
// 실습_ 구조체 변수들을 배열에 담으시오
Netflix netflixs[] =
{
{ "기묘한이야기", "스위트홈", 20 },
{ "블랙미러", "D*P", 50},
{ "오징어게임", "돈룩업", 60 }
};
PrintInfo(netflixs[0]);
SetInfo(&netflixs[0], "지옥", "썸바디", 10);
PrintInfo(netflixs[0]);
cout << endl;
// 실습_ 구조체 배열에 반복문을 사용하여 특정한 값을 찾으시오
FindInfo(netflixs, "오징어게임");
PrintInfo(netflixs[2]);
}
728x90
'코딩 1막 <C++개념편> > 코딩 1막 <C++응용편>' 카테고리의 다른 글
[C++] 멤버함수응용 : monster 사냥 (0) | 2022.06.02 |
---|---|
[C++] 외부함수들을 멤버함수로 변환하고 비교해보기(구조체) (0) | 2022.06.02 |
[C++] 구조체를 써서 축구팀을 만들어 보자 (0) | 2022.05.31 |
[C++] 2차원배열을 써서 구구단을 만들어보자 (0) | 2022.05.31 |
[C++] Factorial 만들기 (0) | 2022.05.31 |