scanf doesn't take precision width