Queue implementation using arrays
I think the value variable in the dequeue method is potentially destructive. rather than printing "the queue is empty cant dequeue", and returning the default value of the value variable, I think it's better to throw an exception and catch it. For example on why it is destructive:

    if (        q.dequeue() == 5) // this will return 0 if the array is empty.

This is not good. The user will think the value that is being returned is 0 though it's already empty.

You initialized the size variable, but you didn't really do anything to it in your queue operations (E.G. size-1 when you dequeue an item). It doesn't make sense for the size variable to not change if you enqueue/dequeue items from the queue. But I'm not sure why it's there yet you don't have a size() method. If you're not going to implement a size method() (you should), I think the size variable is useless.
I think it would be more flexible if the array is resizable (E.G. size*2 if full, size/4 if too large).
Make it generic so you can add other types.