how would i construct a truth table for ~q then p (or arrow p)

Truth table for a→b (implication) is false only when a is true and b is false.

So if we set it up for q→p, where the first column is the value of q, and the first row is the value of p:

q → p
q T F p
T T F
F T T

On negation of q, we only have to switch the values of q in the first column to get:

~q → p
q T F p
F T F
T T T