연재 완료/C Lang 예제코드 모음

C언어 연습문제 풀이 CH11 (5~8)

라이피 (Lypi) 2018. 6. 10. 20:48
반응형

5. 문자열 "information"과 "communication"을 두 개의 포인터 변수에 각각 저장하고, 두 문자열을 합하여 출력하는 프로그램을 작성하라.

//문자열 "information"과 "communication"을 두 개의 포인터 변수에 각각 저장하고, 두 문자열을 합하여 출력하는 프로그램을 작성하라.

#include <stdio.h>
#include <string.h>
#include <stdlib.h>

int main()
{
	const char* str1 = "information ";
	const char* str2 = "communication";

	char* str = (char*)malloc(sizeof(char) * (strlen(str1) + strlen(str2) + 1));
	strcpy_s(str, _msize(str), str1);
	strcat_s(str, _msize(str), str2);

	printf("%s", str);

	free(str);
}


6. 키보드로부터 입력되는 대문자와 소문자를 판별하여 대문자인 경우에는 "uppercase", 소문자일 때에는 "lowercase"를 출력하는 프로그램을 작성하라.

// 키보드로부터 입력되는 대문자와 소문자를 판별하여 대문자인 경우에는 "uppercase", 소문자일 때에는 "lowercase"를 출력하는 프로그램을 작성하라.

#include <stdio.h>
#include <conio.h>
#include <ctype.h>

int main()
{
	char input;
	do {

		puts("입력하신 값이 소문자인지 대문자인지 확인합니다.\n 종료하고 싶으시면 그외의 키를 누르세요 : ");
		input = _getch();
		if (isupper(input)) {
			puts("uppercase");
		}
		else if(islower(input)) {
			puts("lowercase");
		}

	} while (isalpha(input));
}


7. 문자열 "The first snow fell in november"에서 끝 문자부터 시작하여 전방으로 진행하면서 문자 'v'가 첫 번째 나타나는 위치 포인터 값을 구하는 프로그램을 작성하라.

// 문자열 "The first snow fell in november"에서 끝 문자부터 시작하여 전방으로 진행하면서 문자 'v'가 첫 번째 나타나는 위치 포인터 값을 구하는 프로그램을 작성하라.

#include <stdio.h>
#include <string.h>

int main()
{
	const char* vp = NULL;
	const char* str = "The first snow fell in november";

	vp = strrchr(str, 'v');

	printf("%s", vp);
}


8. "They live in peace with a person"문자열을 위한 기억 공간을 확보하여 할당하고 출력하는 프로그램을 작성하라.

//"They live in peace with a person"문자열을 위한 기억 공간을 확보하여 할당하고 출력하는 프로그램을 작성하라.

#include <stdio.h>
#include <stdlib.h>
#include <string.h>

int main()
{
	const char* str = NULL;
	str = (char*)malloc(sizeof(char)*(strlen("They live in peace with a person") + 1));
	str = "They live in peace with a person";

	printf("%s", str);
}


반응형