Search
Duplicate
🔢

2장. 실습문제

생성일
2022/04/04 15:57
태그
C++

1. 실수값 6개를 입력 받아 제일 큰 수와 제일 작은 수를 화면에 출력하는 프로그램을 작성하시오.

#include <iostream> using namespace std; int main() { double arr[6]; double max, min; for (int i = 0; i < 6; i++) { cin >> arr[i]; if (arr[i] > max) max = arr[i]; if (arr[i] < min) min = arr[i]; } cout << "가장 큰 수 = " << max << endl; cout << "가장 작은 수 = " << min << endl; }
C++
복사

2. 이름, 주소, 나이를 입력받아 아래와 같이 출력하는 프로그램을 작성하시오.

#include <iostream> #include <string> using namespace std; int main() { string name, address, year; cout << "이름 : " + name; getline(cin, name); cout << "주소 : " + address; getline(cin, address); cout << "나이 : " + year; getline(cin, year); cout << name + "(" + year + "세)" + " " + address << endl; }
C++
복사

3. 중국집 주문과정을 C++ 작성해보자. 다음 실행 결과와 같이 메뉴와 사람 수를 입력 받고 이를 출력하면 된다. 잘못된 입력의 경우 다시 입력하도록 한다. 단, 한번에 최대 주문할 수 있는 개수는 1~6 사이의 값으로 한다.

#include <iostream> using namespace std; int main(void) { int num; int dishes; cout << "** 중국집 **" << endl; while (true) { cout << "짬뽕: 1, 짜장: 2, 군만두: 3, 종료: 4 >> "; cin >> num; if (num > 4 || num < 1) { cout << "다시 주문해주세요" << endl; continue; } if (num == 4){ cout << "오늘 영업은 종료하였습니다" << endl; return 0; } cout << "몇인분? "; cin >> dishes; switch(num) { case 1: cout << "짬뽕 " << num << "인분 나왔습니다." << endl; break; case 2: cout << "짜장 " << num << "인분 나왔습니다." << endl; break; case 3: cout << "군만두 " << num << "인분 나왔습니다." << endl; break; default: break; } } return 0; }
C++
복사
1.
cout과 << 연산자를 이용하여, 1에서 100까지 정수를 다음과 같이 한 줄에 10개씩 출력하라. 각 정수는 탭으로 분리하여 출력하라.
#include <iostream> #include <cstring> using namespace std; int main() { for (int n = 1; n <= 100; n++) { cout << n << '\t'; if (n % 10 == 0) cout << endl; } }
C++
복사
2.
구구단 출력
#include <iostream> #include <cstring> using namespace std; int main() { for (int i = 1; i <= 9; i++) { for (int j = 1; j <= 9; j++) { cout << j << "x" << i << "=" << i * j << '\t'; } cout << '\n'; } }
C++
복사
3.
큰 수 출력
#include <iostream> using namespace std; void op() { int a, b; cout << "두 수를 입력하라>> "; cin >> a; cin >> b; if (a > b) cout << "큰 수 = " << a; else if (b > a) cout << "큰 수 = " << b; else cout << "다시 입력하세요."; // cout << "큰 수 = " << (a > b ? a : b); } int main() { op(); }
C++
복사
4.
소수 포함 큰 수 출력
5.
x 의 개수 출력
#include <iostream> #include <string> using namespace std; void op() { char sentences[100]; int count = 0; cout << "문장들을 입력하라(100개 미만)." << endl; cin.getline(sentences, 100); for (int i = 0; i <= sizeof(sentences); i++) { if (sentences[i] == 'x' || sentences[i] == 'X') count++; } cout << "x의 개수는 " << count << endl; } int main() { op(); }
C++
복사
6.
문자열 같은지 검사
#include <iostream> #include <string> using namespace std; void op() { string a, b; cout << "새 암호를 입력하세요>> "; getline(cin, a); cout << "새로운 암호르 다시 한번 더 입력하세요>> "; getline(cin, b); if (a == b) cout << "같습니다"; else cout << "같지 않습니다"; } int main() { op(); }
C++
복사
7.
yes 누르면 종료
#include <iostream> #include <cstring> using namespace std; void op() { char a[100]; while(true){ cout << "종료하고 싶으면 yes를 입력하세요>> "; cin.getline(a, 100); if (strcmp(a, "yes") == 0) break; } cout << "종료합니다..." << endl; } int main() { op(); }
C++
복사
8.
가장 긴 이름 출력
#include <iostream> #include <cstring> using namespace std; void op() { string top_name = {}; char name[100] = {}; int max = 0; cout << "5명의 이름을 ';'으로 구분하여 입력하세요" << endl; for (int i = 0; i <= 5; i++) { cin.getline(name, 100, ';'); cout << (i + 1) << " : " << name << endl; if (max < strlen(name)){ max = strlen(name); top_name = name; } } cout << "가장 긴 이름은 " << top_name << endl; } int main() { op(); }
C++
복사
9.
문자열 하나씩 증가
#include <iostream> #include <cstring> using namespace std; void op() { char a[50]; cout << "문자열 입력>> " << endl; cin.getline(a, 50); for (int i = 0; i < strlen(a); i++){ for (int j = 0; j <= i; j++){ cout << a[j]; } cout << '\n'; } } int main() { op(); }
C++
복사