There are many different ways to implement neural network that range from simple/easy-to-understand to highly-optimized. there are many links that have implementations in C++, C#, Java, etc. which could serve as good references if you're interested in seeing how other people have done it.
Your design will be highly dependant on the specific type of reinforcement learning that you plan to use.
The simplest solution would be to use backpropagation. This can be done by feeding the error back into the network (in reverse fashion) and using the inverse of the (sigmoid) function to determine the adjustment to each weight. After the number of iterations, the weights will automatically get adjusted to fit the input.
Genetic Algorithms are an alternative to back-propagation which yield better results (although a bit slower). This is done by treating the weights as the schema so that it can easily be inserted and removed. The schema is replaced with a mutated version (using principles of natural selection) several times until a fit is found.