How to get rid of subsurface shading artefacts
Your problem is the huge ngon on the top. Try filling it with a grid-like patch of mesh.

Check out this topology guide especially the part about Cylinder Caps