오늘 실습한 코드에 아래와 같은 부분이 있다.

        // 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) 밤 자정까지 조교에게 이메일.

 
class/os2014f/hw2.txt · Last modified: 2017/06/17 09:36 (external edit) · [Old revisions]
Recent changes RSS feed Powered by PHP Valid XHTML 1.0 Valid CSS Driven by DokuWiki