명품 C++ programming 실습 문제 11장 5번

문제 : 다음 프로그램은 예제 11-3의 코드이다. 아래 코드에서 char [] 대신 string을 이용하여 문자열을 다루도록 프로그램을 재작성하라. 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 #include #include using namespace std; int main() { char cmd[80]; cout « “cin.get(char*, int)로 문자열을 읽습니다.” « endl; while(true) { cout « “종료하려면 exit를 입력하세요 » “; cin.get(cmd, 80); // 79개까지의 문자 읽음 if(strcmp(cmd, “exit”) == 0 ) { cout « “프로그램을 종료합니다….”; return 0; } else cin.ignore(1); // 버퍼에 남아 있는 키 (’\n’) 제거 } } 실행 결과 : ...

March 27, 2020 · 2 min · Sobamemil

명품 C++ programming 실습 문제 11장 4번

문제 : 한 줄에 ‘영어문장;한글문자’ 형식으로 키 입력될 때, cin.ignore()를 이용하여 ‘;‘이전에 입력된 문자열만 출력하는 프로그램을 작성하라. 아래에서 ^Z(ctrl-z) 키는 입력 종료를 나타내는 키이며, cin.get()은 EOF를 리턴한다. 실행 결과 : 목적 및 힌트 : cin.get(), EOF, cin.ignore() 활용 코드 : 1 2 3 4 5 6 7 8 9 10 11 12 13 14 #include using namespace std; int main() { int ch; while( (ch = cin.get()) != EOF ) { if(ch == ‘;’){ cout.put(’\n’); cin.ignore(100, ‘\n’); } else cout.put(ch); } } 설명 : ...

March 27, 2020 · 1 min · Sobamemil

명품 C++ programming 실습 문제 11장 3번

문제 : 한 줄에 ‘영어문장;한글문자’ 형식으로 키 입력될 때, cin.ignore()를 이용하여 ‘;’ 이후에 입력된 문자열을 화면에 출력하는 프로그램을 작성하라. 아래에서 ^Z(ctrl-z) 키는 입력 종료는 나타내는 키이며, cin.get()은 EOF를 리턴한다. 실행 결과 : 목적 및 힌트 : cin.get(), EOF, cin.ignore() 활용 코드 : 1 2 3 4 5 6 7 8 9 10 11 12 #include using namespace std; int main() { int ch; cin.ignore(100, ‘;’); // 영어 문장이 최대 99개의 문자로 입력된다고 가정한다. while((ch=cin.get()) != EOF) { cout.put(ch); if(ch == ‘\n’) cin.ignore(100, ‘;’); // 영어 문장이 최대 99개의 문자로 입력된다고 가정한다. } } 설명 : ...

March 27, 2020 · 2 min · Sobamemil

명품 C++ programming 실습 문제 11장 2번

문제 : istream& get(char& ch) 함수를 이용하여 한 라인을 읽고 빈칸(’ ‘)이 몇 개인지 출력하는 프로그램을 작성하라. 실행 결과 : 목적 및 힌트 : cin으로 키 입력 연습 코드 : 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 #include using namespace std; int main() { char ch; int cnt; while(true){ cin.get(ch); // 키를 ch에 읽어옴 if(cin.eof()) // EOF 문자 즉 ctrl-z 키가 입력된 경우, 읽기 종료 break; if(ch == ‘\n’) // 키가 입력된 경우 읽기 중단 break; else if(ch == ’ ‘) cnt++; } cout « cnt; } 공유하기 ...

March 27, 2020 · 1 min · Sobamemil

명품 C++ programming 실습 문제 11장 1번

문제 : int cin.get() 함수를 이용하여 키보드로부터 한 라인을 읽고 ‘a’가 몇 개인지 출력하는 프로그램을 작성하라. 실행 결과 : 목적 및 힌트 : cin으로 키 입력 연습 코드 : 1 2 3 4 5 6 7 8 9 10 11 12 13 14 #include using namespace std; int main() { int a; int cnt=0; while( (a = cin.get() ) != EOF ){ if(a == ‘a’) cnt++; else if(a == ‘\n’) break; } cout « cnt; } 설명 : ...

March 27, 2020 · 1 min · Sobamemil

명품 C++ programming 실습 문제 2장 14번

문제 : 커피를 주문하는 간단한 C++ 프로그램을 작성해보자. 커피 종류는 “에스프레소”, “아메리카노”, “카푸치노"의 3가지이며 가격은 각각 2000원, 2300원, 2500원이다. 하루에 20000원 이상 벌게 되면 카페를 닫는다. 실행 결과와 같이 작동하는 프로그램을 작성하라. 목적 및 힌트 : C++ 프로그램 구성. cin, strcmp() 활용 종합 연습 char coffee[100]; int num; cin » coffee » num; 으로 커피 이름과 잔 수를 입력받으면 됩니다. 또한 커피는 if(strcmp(coffee, “에스프레소”) == 0 )과 같이 비교하면 됩니다. ...

February 28, 2020 · 2 min · Sobamemil

명품 C++ programming 실습 문제 2장 9번

문제 : 이름, 주소, 나이를 입력받아 다시 출력하는 프로그램을 작성하라. 실행 예시는 다음과 같다. 목적 및 힌트 : 빈칸을 포함하는 문자열 읽기 실행 결과 : 코드 : 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 #include using namespace std; int main() { char name[100]; char addr[100]; int age; cout « “이름은?”; cin.getline(name,100); cout « “주소는?”; cin.getline(addr,100); cout « “나이는?”; cin » age; cout « name « “, " « addr « “, " « age « “세”; return 0; } 공유하기 ...

February 28, 2020 · 1 min · Sobamemil

명품 C++ programming 실습 문제 2장 5번

문제 : 키가 입력될 때까지 문자들을 읽고, 입력된 문자 ‘x’의 개수를 화면에 출력하라. 목적 및 힌트 : cin.getline() 함수를 이용해 한 줄의 문자열 읽기 실행 결과 : 코드 : 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 #include using namespace std; int main() { int i,x=0; char a[100]; cout « “문자들을 입력하라(100개 미만).\n”; cin.getline(a,100); // 문자열 단위로 읽음 for(i=0; i<100; i++){ if(a[i]==‘x’) // a[i]가 ‘x’이면 카운트 x++; } cout « “x의 개수는 " « x; return 0; } 설명 : ...

February 28, 2020 · 1 min · Sobamemil

명품 C++ programming 실습 문제 2장 4번

문제 : 소수점을 가지는 5개의 실수를 입력 받아 제일 큰 수를 화면에 출력하라. 목적 및 힌트 : cin 활용, 키보드로부터 실수 읽기 실행 결과 : 코드 : 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 #include using namespace std; int main() { float a[5], big; int i; cout « “5 개의 실수를 입력하라»”; for(i=0;i<5;i++) // 5개의 실수 입력 받기 cin » a[i]; big = a[0]; // a의 첫번째 원소를 big에 삽입 for(i=1;i<5;i++) if(big<a[i]) //a[i]가 big보다 크면 big에 삽입 big=a[i]; cout « “제일 큰 수 = " « big; return 0; } 설명 : ...

February 28, 2020 · 1 min · Sobamemil

명품 C++ programming 실습문제 2장 3번

문제 : 키보드로부터 두 개의 정수를 읽어 큰 수를 화면에 출력하라. 목적 및 힌트 : cin 활용, 키보드로부터 정수 읽기 실행 결과 : 코드 : 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 #include using namespace std; int main(){ int a,b; cout « “두 수를 입력하라»”; cin » a » b; // cin 연산자를 이용하여 두개의 정수 입력받기 cout « “큰 수 = “; if(a<b) cout « b; else cout « a; return 0; } 설명 : ...

February 28, 2020 · 1 min · Sobamemil