c언어 배열 문자열 질문

조회수 499회

배열 요소 하나 하나 문자를 받을 수는 있잖아요? for문으로도 쉽게 구현이 가능하고, 근데 문자열을 제가 여러 예제를 보았는데 scanf로 문자열을 받을 때, 헷갈리는 게 몇 개 있더라구요.

str[10]이라는 배열이 있을 때,

ex)

 for(i=0; i<3; i++)

   scanf("%s", str[i]); 

ex)

 scanf("%s", str);

두 예제를 어떻게 문자열이 담기고 담기는 원리에 대해서 자세하게 설명해 주시면 감사하겠습니다. 또, 이 예제 말고도 문자열을 다르게 받을 수 있으면 그것도 추가해 주셔서 설명해 주시면 감사하겠습니다.

  • 질문이 너무 광범위합니다. nowp 2020.3.21 12:55

1 답변

  • 첫번째 str이라는 배열에 한요소 주소값에 일일히 접근해서 값을 넣음.

    두번째는 str이라는 배열에 접근해서 처음요소부터 차례로 입력값을 넣음.

    그리고 FOR문 사용하신 코드를 수정하면

        for(i=0;i<3;i++)
        {   
            scanf("%c",&str[i]);
            getchar();   
        }
    

    이런식으로 코드를 작성해야 할 것 같습니다

답변을 하려면 로그인이 필요합니다.

프로그래머스 커뮤니티는 개발자들을 위한 Q&A 서비스입니다. 로그인해야 답변을 작성하실 수 있습니다.

(ಠ_ಠ)
(ಠ‿ಠ)