Create 2 'pointers', one to the start of the queue, one to where the next one will go. When you add an item, check to make sure the start and end aren't the same (if they are, then your queue is full. How you want to handle that is your choice). If they aren't the same, store the new value at the 'next' pointer and increment it modulus the size of your array. When you get a value from the queue, get it from the 'start' pointer and increment it modulus the size of your array.
The only issue left is how to deal with an empty array (start=end, but the array isn't full). I'd use a boolean to indicate you have values, and change it in the fetch section when you increment the 'start' pointer (check if = to 'next' and if so set 'is empty' = true. When you add something, set it to false).