작성
·
611
0
왜 아래와 같이 코드를 작성하면 안 되는지 알고 싶습니다.
아래와 같이 draw 함수를 정의하면 cmd창에 아무것도 안 뜨네요.
void draw(int n)
{
printf("*" * n);
printf("\n");
}
답변 1
0
안녕하세요!
우선 \n 은 출력되신게 맞구요
음 * 문자를 n 번 반복해서 출력하기 위해 printf("*" * n); 라고 쓰신 것 같은데
큰 따옴표는 문자열입니다. "abcdedafg" 이런 문자들이 모여있는 문자열인데
문자열로서의 * 에다가 숫자를 곱하려는 시도이기 때문에 에러가 발생할 것입니다. 문자열은 숫자가 아니기에 연산할 수 없는 대상입니다.
* 문자를 n 번 반복 출력하기 위해서라면 문자에 n 을 곱해주는 것이 아닌
for 문을 돌려 printf('*') 이렇게 * 출력하는문을 n 번 반복해서 실행시킬 수 있도록 하는게 좋겠습니다!