How can I get a list shows which add-ons are enabled by user?
Blender's Python API allows to get the currently enabled add-ons, without any differentiation of what/who enabled them. Therefore it's not possible to distinguish between add-ons that have been enabled by default, by the user or by another add-on/script. You may however compare the currently active add-ons to the ones that are known to be enabled by default and only use those that are not it the default list.

Blender 2.79

The enabled add-ons can be access through the user preferences bpy.context.user_preferences.addons.

import bpy


for addon in bpy.context.user_preferences.addons:
    print(addon.module)


The add-ons that are enabled by default are:

io_scene_3ds
io_scene_fbx
io_anim_bvh
io_mesh_ply
io_scene_obj
io_scene_x3d
io_mesh_stl
io_mesh_uv_layout
io_curve_svg
cycles


Therefore a solution that excludes them could look like this:

import bpy


default_addons = {"io_scene_3ds",
                  "io_scene_fbx",
                  "io_anim_bvh",
                  "io_mesh_ply",
                  "io_scene_obj",
                  "io_scene_x3d",
                  "io_mesh_stl",
                  "io_mesh_uv_layout",
                  "io_curve_svg",
                  "cycles"}


for addon in bpy.context.user_preferences.addons:
    if addon.module not in default_addons:
        print(addon.module)


Blender 2.8x

The enabled add-ons can be access through the preferences  bpy.context.preferences.addons.

import bpy


for addon in bpy.context.preferences.addons:
    print(addon.module)


The add-ons that are enabled by default are:

io_anim_bvh
io_curve_svg
io_mesh_ply
io_mesh_stl
io_mesh_uv_layout
io_scene_fbx
io_scene_gltf2
io_scene_obj
io_scene_x3d
cycles


Therefore a solution that excludes them could look like this:

import bpy


default_addons = {"io_anim_bvh",
                  "io_curve_svg",
                  "io_mesh_ply",
                  "io_mesh_stl",
                  "io_mesh_uv_layout",
                  "io_scene_fbx",
                  "io_scene_gltf2",
                  "io_scene_obj",
                  "io_scene_x3d",
                  "cycles"}


for addon in bpy.context.preferences.addons:
    if addon.module not in default_addons:
        print(addon.module)