kihon5551   5달 전

abc를 입력했을 때

scanf("%s",s);

이렇게 입력받으면 strlen(s)가 3이나오는데

 for(int i=0;i<1000000;i++)
{
scanf("%c",&s[i]);
if(s[i]=='\n')
break;
}

이렇게 입력받으면 strlen(s)가 4가 나옵니다. 

이유가 혹시 s[i]=='\n'일 경우 브레이크 걸리니깐 문자열에는 \n이 추가되서 4로 나오는건가요?

그래서 입력받는 문자열 마지막에 공백문자를 무시하기위해서 
if(s[strlen(s)-2]==' ')
cnt=cnt-1;

이렇게 코드를 작성해서 문제에서 원하는 것을 다 충족시켰는데 틀렸다고 나옵니다. 뭐가 문제인가요? 알려주시면 감사하겠습니다.

0000000000   5달 전

길이가 1000000인 문자열을 입력받기 위해서는 문자열의 크기가 최소 1000001이어야 합니다

댓글을 작성하려면 로그인해야 합니다.