1008 출력하기
#include <iostream>
#include <stdlib.h>
using namespace std;
int main() {
cout << "\u250C\u252C\u2510\n";
cout << "\u251C\u253C\u2524\n";
cout << "\u2514\u2534\u2518\n";
}
유니코드를 출력할때, cout 함수를 사용해서 입력해도 printf 함수와 동일하게 출력가능하다.
1011 문자 1개 입력받아 출력하기
#include <iostream>
using namespace std;
int main() {
char x;
cin >> x;
cout << x;
return 0;
}
C++에서도! scanf와 printf 도 적절하게 활용하는 것이 좋다.
1019 연월일 입력받아 그대로 출력하기
#include <iostream>
#include <cstring>
using namespace std;
int main() {
int a, b, c;
scanf("%d.%d.%d", &a, &b, &c);
printf("%04d.%02d.%02d", a, b, c);
return 0;
}
지정된 형식대로 출력하기위해서는 scanf와 printf가 좋다(소숫점자리수 지정 출력 등)
1020 주민번호 입력받아 형태바꿔 출력하기
#include <iostream>
int main() {
int front, back;
scanf("%d-%d", &front, &back);
printf("%06d%07d", front, back);
}
마찬가지 방법으로 출력 및 입력을 printf와 scanf 형식을 사용하는것이 의외로 쓸만하다.
1021 단어한개 입력받아 그대로 출력하기
#include <iostream>
using namespace std;
int main() {
char data[51] = "";
cin >> data;
cout << data;
return 0;
}
단어 형태는 배열을 사용하여 입력하고, printf 에서 %s를 사용하여 출력 혹은 cout으로 출력한다.
1022 문장 입출력
#include <iostream>
using namespace std;
int main() {
char data[2001];
fgets(data, 2000, stdin);
cout << data;
}
fgets(저장받을 배열인자, 저장할 최대 문자수, stdin);
#include <iostream>
using namespace std;
int main() {
char data[2001];
cin.getline(data, 2000);
//fgets(data, 2000, stdin);
cout << data;
}
std::istream::getline - cin.getline(저장받을 배열인자, 저장할 최대 문자수);
=> 공백을 포함한 문자열을 받는 방식이다.
속도 : fgets함수 > getline함수
1024 단어1개 입력받아 문자 나누어서 출력하기
#define _CRT_SECURE_NO_WARNINGS
#include <iostream>
using namespace std;
int main() {
char d[30];
scanf("%s", d);
int i = 0;
for (int i = 0; d[i] != '\0'; i++) {
cout << "'" << d[i] << "'" << endl;
}
공백문자 '\0'를 이용하여 공백이 나올때까지 배열을 한글자씩 나누어서 출력한다.
1046 정수3개를 입력받아 평균 구하기
#include <iostream>
using namespace std;
int main()
{
int a,b,c;
scanf("%d %d %d" , &a, &b, &c);
cout<< a+b+c <<endl;
printf("%.1f", (float)(a+b+c)/3);
}
평균값 계산을 할 시에, (float)형으로 형변환 혹은 3.0으로 나누는 등의 변환이 필요하다.
1048 시프트연산 2의거듭제곱 배로 출력하기
#include <iostream>
#include <stdlib.h>
#include <stdio.h>
using namespace std;
int main()
{
int a,b;
scanf("%d %d", &a , &b);
printf("%d", a << b);
}
a<<3은 a*2^3과 같다.
이를 이용하여 2^n 거듭제곱을 곱해줄수있다.
1071 0이 될때까지 무한출력하기(goto 사용)
#include <iostream>
using namespace std;
int main()
{
int n;
work:
cin>>n;
if(n==0){
}
else{
cout<<n<<endl;
goto work;
}
}
goto 레이블: 을 이용하면 반복되는 부분을 여러개 자유롭게 사용가능하다.
단순한 코드 사용으로만 이용하자.
1079 원하는 문자가 입력될 때까지 반복 출력하기
#include <iostream>
using namespace std;
int main()
{
char c;
while(c!='q'){
cin >> c;
cout << c <<endl;
}
}
반복문을 이용하여 입력받은 문자가 해당 문자인지 확인하여 loop를 돌린다.
'코딩테스트 > C++' 카테고리의 다른 글
[C++] 재귀 "우박수 길이(3n+1)" (0) | 2020.09.16 |
---|