언어/C++
4장4번 - 문장 거꾸로 출력하기
옥돌소녀
2019. 11. 21. 11:23
#include <iostream>
using namespace std;
/* run this program using the console pauser or add your own getch, system("pause") or input loop */
int main(int argc, char** argv) {
string str;
string first;
string last;
cout <<" 아래에 한 줄을 입력하세요 (eixt를 입력하면 종료됩니다.) "<<endl;
while(1){
cout << ">>";
getline(cin,str);
if(str=="exit") break;
int len=str.size();
for(int i=0; i<len/2; i++){
first=str.at(i);
last=str.at(len-1-i);
str.replace(i,1,last);
str.replace(len-1-i,1,first);
}
cout << str << endl;
}
return 0;
}
설명 >>
문자열 first, last 를 두어서 앞과 뒤를 교체해주는 변수를 ㅁ나든다
str.replace () ==> 기존 문자열의 pos 부터 count 개 만큼, 혹은 first 부터 last 까지를 string_view 로 변환 가능한 타입 t 로 치환한다.
str.at() ==> Returns a reference to the character at position pos in the string.
배열은 0부터 시작하므로 len-1 으로 시작점을 잡는다