오늘 실습한 코드에 아래와 같은 부분이 있다.
// print current guess printf( "The word is : "); for( int i=0; i < strlen(theAnswer); i++ ) { printf("_"); } printf("\n"); // get an alphabet letter char c; do { c = getchar(); }while( ! isalpha(c) );
위 코드의 첫번째 부분 (print current guess)와 두번째 부분 (get an alphabet letter)을 각각 함수로 정의하여라. 즉, 아래 파일에서 빈 함수정의를 작성하여라.
제출은 아래 두 함수의 내용을 채워서 아래 코드를 hw2_<학번>.cpp 파일로 저장, 제출한다 (함수정의와 main함수 모두 포함). 두 함수의 body 이 외에 어떤 코드도 수정하면 안된다 (부득이한 경우 제외). 코드 실수로 수정하여 컴파일 안되면 0점 처리.
#include <stdio.h> #include <stdlib.h> void printGuess( int len ) { <채울 것> } char getAlpha( void ) { <채울 것> } int main() { int length; printf( "## HW2-1: Please enter word length: "); scanf("%d", &length ); printGuess(length); printf( "## HW2-2: Please enter a letter: "); char c = getAlpha(); printf( "You entered an alphabet: %c\n", c ); }
채점방법: 조교가 제출한 파일을 Visual Studio에서 컴파일&실행을 해 본다. 이 때, 첫번째 입력하는 word length에 다양한 값을 입력해서 시험을 할 것이고, 두번째 입력에서는 !, #, @ 등의 특수문자를 입력해 본 후 정상적인 알파벳을 입력하여서 특수문자는 무시되고 알파벳만 인식을 하는지 를 테스트 한다. 다음은 예제 테스트 화면
## HW2-1: Please enter word length: 5 The word is : _____ ## HW2-2: Please enter a letter: 3 * ! t You entered an alphabet: t
배점: 함수 1당 5점. 총점 10점. 제출한 파일이 컴파일이 안되면 0점. 컴파일은 되나 실행이 안되거나 에러가 나면 1점.
제출일: 이번주 일요일 (9/21) 밤 자정까지 조교에게 이메일.