ABOUT ME

-

Today
-
Yesterday
-
Total
-
  • JUNGOL...29
    일지 2020. 12. 7. 12:20

    Language_Code/문자열1/자가진단1


    문제                                            

    33부터 127 까지의 숫자를 계속 입력받아 입력받은 숫자의 아스키코드에 해당하는 문자를 출력하다가 범위를 벗어나는 입력이 들어오면 종료하는 프로그램을 작성하시오.

     

    입·출력 예                                    

    ASCII code =? 66

    B

    ASCII code =? 122

    z

    ASCII code =? 0

     

    Hint!

    문자열 개념 Lecture


    BasicString101.h

    #include <iostream>

     

    BasicString101.cpp

    void BasicString101::Code()
    {
    	int var;
    
    	while (true)
    	{
    		std::cout << "ASCII code =? ";
    		std::cin >> var;
    
    		if (var < 33 || 127 < var)
    		{
    			break;
    		}
    
    		std::cout << static_cast<char>(var) << '\n';
    	}
    }

     

    Language_Code/문자열1/자가진단2


    문제                                            

    문자열을 입력받은 뒤 그 문자열을 이어서 두 번 출력하는 프로그램을 작성하시오.
    문자열의 길이는 100이하이다.

     

    입력 예                                        

    ASDFG

     

    출력 예                                        

    ASDFGASDFG


    BasicString102.h

    #include <iostream>
    #include <string>
    
    using std::string;

     

    BasicString102.cpp

    void BasicString102::Code()
    {
    	string str;
    
    	std::cin >> str;
    
    	std::cout << str << str;
    }

     

    Language_Code/문자열1/자가진단3


    문제                                            

    문자열을 “Hong Gil Dong”으로 초기화 한 후 3번부터 6번까지의 문자를 차례로 출력하시오.

     

    출력 예                                        

    g Gi


    BasicString103.h

    #include <iostream>
    #include <string>
    
    using std::string;

     

    BasicString103.cpp

    void BasicString103::Code()
    {
    	string str{ "Hong Gil Dong" };
    
    	std::cout << str.substr(3, 4);
    }

     

    Language_Code/문자열1/자가진단4


    문제                                            

    문자열을 입력받고 정수를 입력 받아서 문자열의 맨 뒤부터 정수만큼 출력하는 프로그램을 작성하시오.

    만약 입력받은 정수가 문자열의 길이보다 크다면 맨 뒤부터 맨 처음까지 모두 출력한다.

     

    (문자열 길이는 최대 100자 이하이다. )

     

    입력 예                                        

    korea 3

     

    출력 예                                        

    aer


    BasicString104.h

    #include <iostream>
    #include <string>
    #include <algorithm>
    
    using std::string;

     

    BasicString104.cpp

    void BasicString104::Code()
    {
    	string str;
    	size_t n;
    
    	std::cin >> str >> n;
    
    	std::reverse(str.begin(), str.end());
    
    	if (n > str.size())
    	{
    		std::cout << str;
    	}
    	else
    	{
    		std::cout << str.substr(0, n);
    	}
    }

     

    Language_Code/문자열1/자가진단5


    문제                                            

    두 개의 문자열을 입력받아서 두 문자열의 길이의 합을 출력하는 프로그램을 작성하시오.

    각 문자열의 길이는 20자 미만이다.

     

    입력 예                                        

    Korean

    English

     

    출력 예                                        

    13


    BasicString105.h

    #include <iostream>
    #include <string>
    
    using std::string;

     

    BasicString105.cpp

    void BasicString105::Code()
    {
    	string str1, str2;
    
    	std::cin >> str1 >> str2;
    
    	std::cout << str1.size() + str2.size();
    }

     

    Language_Code/문자열1/자가진단6


    문제                                            

    문자를 입력받아 알파벳 문자인 경우에는 그대로 출력하고 숫자인 경우는 아스키코드값을 출력하는 작업을 반복하다가 기타의 문자가 입력되면 종료하는 프로그램을 작성하시오.

     

    * 입출력예에서 진한글씨가 출력

     

    입·출력 예                                    

    A

    A

    1

    49

    @

     

    Hint!

    문자의 아스키코드를 출력하려면 변환지정을 '%c' 대신 '%d' 로 하면 된다.

    fflush함수는 호환성이 떨어지므로 fflush(stdin); 대신 getchar();을 한번 더 써주거나 scanf(" %c", &변수); 로 입력받는 것이 안정적이다.


    BasicString106.h

    #include <iostream>
    #include <cctype>

     

    BasicString106.cpp

    void BasicString106::Code()
    {
    	char ch;
    
    	while (true)
    	{
    		std::cin >> ch;
    
    		if (isalpha(ch))
    		{
    			std::cout << ch << '\n';
    		}
    		else if (isdigit(ch))
    		{
    			std::cout << static_cast<int>(ch) << '\n';
    		}
    		else
    		{
    			break;
    		}
    	}
    }

     

    Language_Code/문자열1/자가진단7


    문제                                            

    문자열을 입력받아 알파벳 문자만 모두 대문자로 출력하는 프로그램을 작성하시오.
    문자열의 길이는 100이하이다.

     

    입력 예                                        

    1988-Seoul-Olympic!!!

     

    출력 예                                        

    SEOULOLYMPIC


    BasicString107.h

    #include <iostream>
    #include <string>
    #include <cctype>
    
    using std::string;

     

    BasicString107.cpp

    void BasicString107::Code()
    {
    	string str;
    
    	std::cin >> str;
    
    	for (int i = 0; i < str.size(); i++)
    	{
    		if (isalpha(str[i]))
    		{
    			std::cout << static_cast<char>(toupper(str[i]));
    		}
    	}
    }

     

    Language_Code/문자열1/자가진단8


    문제                                            

    공백을 포함한 100글자 이하의 문자열을 입력받아 문장을 이루는 단어의 개수를 출력하는 프로그램을 작성하시오.

     

    * 문장입력 할 때 gets()함수 대신 fgets() 함수를 사용하세요. C++14 적용!​

     

    입력 예                                        

    My name is Kimchulsoo

     

    출력 예                                        

    4


    BasicString108.h

    #include <iostream>
    #include <string>
    
    using std::string;

     

    BasicString108.cpp

    void BasicString108::Code()
    {
    	string str;
    
    	std::getline(std::cin, str);
    
    	int count{ 1 };
    
    	for (int i = 0; i < str.size(); i++)
    	{
    		if (str[i] == ' ')
    		{
    			count++;
    		}
    	}
    
    	std::cout << count;
    }

     

    Language_Code/문자열1/자가진단9


    문제                                            

    문자열을 입력 받아서 문자수만큼 오른쪽으로 한 바퀴 회전하여 출력하는 프로그램을 작성하시오. 문자열의 길이는 100이하이다.

     

    입력 예                                        

    PROGRAM

     

    출력 예                                        

    MPROGRA

    AMPROGR

    RAMPROG

    GRAMPRO

    OGRAMPR

    ROGRAMP

    PROGRAM


    BasicString109.h

    #include <iostream>
    #include <string>
    
    using std::string;

     

    BasicString109.cpp

    void BasicString109::Code()
    {
    	string str;
    
    	std::cin >> str;
    
    	int n{ static_cast<int>(str.size()) };
    	for (int i = 1; i <= n; i++)
    	{
    		for (int j = n - i; j < n; j++)
    		{
    			std::cout << str[j];
    		}
    
    		for (int j = 0; j < n - i; j++)
    		{
    			std::cout << str[j];
    		}
    
    		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

     

    댓글

Designed by Tistory.