JUNGOL...30
Language_Code/문자열1/형성평가1
문제
영문자 두 개를 입력 받아서 각각의 아스키코드의 합과 차를 출력하는 프로그램을 작성하시오.
입력 예
A a
출력 예
162 32
FormativeString101.h
#include <iostream>
#include <cmath>
FormativeString101.cpp
void FormativeString101::Code()
{
char ch1, ch2;
std::cin >> ch1 >> ch2;
int var1{ static_cast<int>(ch1) };
int var2{ static_cast<int>(ch2) };
std::cout << var1 + var2 << ' ' << abs(var1 - var2);
}
Language_Code/문자열1/형성평가2
문제
5개 이상 100개 이하의 문자로 된 단어를 입력받은 후 앞에서부터 5자를 출력하는 프로그램을 작성하시오.
입력 예
AbCdEFG
출력 예
AbCdE
FormativeString102.h
#include <iostream>
#include <string>
using std::string;
FormativeString102.cpp
void FormativeString102::Code()
{
string str;
std::cin >> str;
std::cout << str.substr(0, 5);
}
Language_Code/문자열1/형성평가3
문제
100개 이하의 문자열을 입력받아서 영문자와 숫자만 출력하되 영문자는 모두 소문자로 출력하는 프로그램을 작성하시오.
입력 예
Hancom1234@cqclass.com
출력 예
hancom1234cqclasscom
FormativeString103.h
#include <iostream>
#include <string>
#include <cctype>
using std::string;
FormativeString103.cpp
void FormativeString103::Code()
{
string str;
std::cin >> str;
for (int i = 0; i < str.size(); i++)
{
if (isalpha(str[i]))
{
std::cout << static_cast<char>(tolower(str[i]));
}
else if (isdigit(str[i]))
{
std::cout << str[i];
}
}
}
Language_Code/문자열1/형성평가4
문제
단어와 문자 한 개를 입력받아서 단어에서 입력받은 문자와 같은 문자를 찾아서 그 위치를 출력하는 프로그램을 작성하시오.
단어에서 첫 번째 문자의 위치는 0으로 하고 찾는 문자가 여러 개일 때는 처음 나오는 위치를 출력한다.
만약 찾는 문자가 없을 때는 "No"라고 출력한다. 대소문자는 구별되며 단어는 100자 이하이다.
입력 예
Jungol.co.kr o
출력 예
4
FormativeString104.h
#include <iostream>
#include <string>
#include <climits>
using std::string;
FormativeString104.cpp
void FormativeString104::Code()
{
string str;
char ch;
std::cin >> str >> ch;
size_t pos{ str.find(ch, 0) };
if (pos != ULLONG_MAX)
{
std::cout << pos;
}
else
{
std::cout << "No";
}
}
Language_Code/문자열1/형성평가5
문제
두 개의 단어를 입력받아서 길이가 긴 단어의 문자 개수를 출력하는 프로그램을 작성하시오.
단어의 길이는 100자 이하다.
입력 예
excel powerpoint
출력 예
10
FormativeString105.h
#include <iostream>
#include <string>
using std::string;
FormativeString105.cpp
void FormativeString105::Code()
{
string str1, str2;
std::cin >> str1 >> str2;
size_t result{ str1.size() > str2.size() ? str1.size() : str2.size() };
std::cout << result;
}
Language_Code/문자열1/형성평가6
문제
문자열(100자 이하)을 입력받은 후 정수를 입력받아 해당위치의 문자를 제거하고 출력하는 작업을 반복하다가 문자 1개가 남으면 종료하는 프로그램을 작성하시오.
첫 번째 문자의 위치는 1이며 만약 입력받은 번호가 문자열의 길이 이상이면 마지막 문자를 제거한다.
* 입출력예에서 진한글씨가 출력
출력 예
word
3
wod
1
od
10
o
FormativeString106.h
#include <iostream>
#include <string>
using std::string;
FormativeString106.cpp
void FormativeString106::Code()
{
string str;
std::cin >> str;
size_t n;
do
{
std::cin >> n;
if (n <= 0)
{
n = 1;
}
else if (n > str.size())
{
n = str.size();
}
str.replace(n - 1, 1, "");
std::cout << str << '\n';
} while (str.size() > 1);
}
Language_Code/문자열1/형성평가7
문제
공백을 포함한 문자열을 입력받아 다음과 같이 분리하여 번호와 함께 출력하는 프로그램을 작성하시오.
문자열의 길이는 100자 이하이다.
* 문장 입력할 때 gets()함수 대신 fgets() 함수를 사용하세요. C++14 적용!
입력 예
My name is Kimchulsoo
출력 예
1. My
2. name
3. is
4. Kimchulsoo
FormativeString107.h
#include <iostream>
#include <string>
using std::string;
FormativeString107.cpp
void FormativeString107::Code()
{
string str;
std::getline(std::cin, str);
int count{ 2 };
for (int i = 0; i < str.size(); i++)
{
if (str[i] == ' ')
{
count++;
}
}
for (int i = 0, j = 0; i < count - 1; i++)
{
std::cout << i + 1 << ". ";
while (j < str.size())
{
std::cout << str[j++];
if (str[j] == ' ')
{
j++;
break;
}
}
std::cout << '\n';
}
}
NadanKim/CodingTest_JUNGOL: JUNGOL 코딩 테스트를 위한 저장소 (github.com)
NadanKim/CodingTest_JUNGOL
JUNGOL 코딩 테스트를 위한 저장소. Contribute to NadanKim/CodingTest_JUNGOL development by creating an account on GitHub.
github.com