Minwoo Dev.

[C++] 윤성우의 열혈 C++ 프로그래밍 Ch02-4 : C++의 표준함수 호출 문제풀이 본문

C++

[C++] 윤성우의 열혈 C++ 프로그래밍 Ch02-4 : C++의 표준함수 호출 문제풀이

itisminu 2024. 3. 4. 23:16
728x90
반응형
SMALL

문제 1

다음 표준함수를 호출하는 예제를 만들되, C++의 헤더를 선언해서 만들어보자.

그리고 예제의 내용은 상관이 없지만, 아래의 함수들을 최소 1회 이상 호출해야 한다. 참고로 다음 함수들은 C언어의 경우 <string.h>에 선언되어 있다.

  • strlen : 문자열의 길이 계산
  • strcat : 문자열의 뒤에 덧붙이기
  • strcpy : 문자열 복사
  • strcmp : 문자열의 비교

 

정답

#include <cstring>
#include <iostream>
using namespace std;

int main(void)
{
    char *s1 = "Hello World!";
    char *s2 = "HI There!";
    char s3[50];

    cout << strlen(s1) << endl;
    cout << strlen(s2) << endl;
    strcat(s3, s1);
    strcpy(s3, s2);
    cout << s3 << endl;
    if (strcmp(s3, s2) == 0)
    {
        cout << "문자열이 같다." << endl;
    }
    else
    {
        cout << "문자열이 다르다." << endl;
    }
    return 0;
}

 

 

 

결과

 

 

 

 

 

 

 

문제 2

다음 세 함수를 이용해서 0 이상 100 미만의 난수를 총 5개 생성하는 예제를 만들되, C++의 헤더를 선언해서 작성해보자. 참고로 C언어의 경우 time 함수는 <time.h>에 선언되어 있고, rand 함수와 srand 함수는 <stdlib.h>에 선언되어 있다.

 

 

정답

#include <iostream>
#include <ctime>
#include <cstdlib>
using namespace std;

int main(void)
{
    srand(time(NULL));
    int random = 0;
    for (int i = 0; i < 5; i++)
    {
        random = rand() % 9;
        cout << "randomValue : " << random << endl;
    }
}

 

 

 

결과

 

728x90
반응형
LIST