title: Excess elements in char array initializer error
body: <p>I've been trying to execute the following code.. However, I keep getting the same errors over and over again and I don't know why!</p>
  
  <p><strong>My code:</strong></p>
  
  <pre><code>#include &lt;stdio.h&gt;
  #include &lt;stdlib.h&gt;
  #include &lt;time.h&gt;
  #include &lt;string.h&gt;
  
  int main(void){
  
      int randomNum;
      char takenWords[4];
      char words[20]={"DOG", "CAT", "ELEPHANT", "CROCODILE", "HIPPOPOTAMUS", "TORTOISE", "TIGER", "FISH", "SEAGULL", "SEAL", "MONKEY", "KANGAROO", "ZEBRA", "GIRAFFE", "RABBIT", "HORSE", "PENGUIN", "BEAR", "SQUIRREL", "HAMSTER"};
  
  
      srand(time(NULL));
  
      for(int i=0; i&lt;4; i++){
          do{
              randomNum = (rand()%20);
          takenWords[i]=words[randomNum];
          }while((strcmp(&amp;words[randomNum], takenWords) == 0)&amp;&amp;((strcmp(&amp;words[randomNum], &amp;takenWords[i])==0)));
          printf("%s\n", &amp;words[randomNum]);
      }
      getchar();
      return 0;
  }
  </code></pre>
  
  <p>I have counted the number of elements which I entered in the array and they do not exceed 20! </p>
  
  <p>Also, why do I keep getting the 'Implicit conversion loses integer precision error'? </p>