You need the CDN's to support it. Please visit this page https://datatables.net/download/index
For the export buttons, you need to select the following extensions from the download page: Buttons, HTML5 Export, JSZip, PDFMake, & PrintView.
<link rel="stylesheet" type="text/css" href="https://cdn.datatables.net/1.10.25/css/jquery.dataTables.min.css"/>
<link rel="stylesheet" type="text/css" href="https://cdn.datatables.net/buttons/1.7.1/css/buttons.dataTables.min.css"/>
<script type="text/javascript" src="https://code.jquery.com/jquery-3.3.1.min.js"></script>
<script type="text/javascript" src="https://cdnjs.cloudflare.com/ajax/libs/jszip/2.5.0/jszip.min.js"></script>
<script type="text/javascript" src="https://cdnjs.cloudflare.com/ajax/libs/pdfmake/0.1.36/pdfmake.min.js"></script>
<script type="text/javascript" src="https://cdnjs.cloudflare.com/ajax/libs/pdfmake/0.1.36/vfs_fonts.js"></script>
<script type="text/javascript" src="https://cdn.datatables.net/1.10.25/js/jquery.dataTables.min.js"></script>
<script type="text/javascript" src="https://cdn.datatables.net/buttons/1.7.1/js/dataTables.buttons.min.js"></script>
<script type="text/javascript" src="https://cdn.datatables.net/buttons/1.7.1/js/buttons.html5.min.js"></script>
<script type="text/javascript" src="https://cdn.datatables.net/buttons/1.7.1/js/buttons.print.min.js"></script>
I updated your Fiddle and here is a working example with my fix from above. I also put your buttons in a collection so they aren't all over the place (looks a lot better)
https://jsfiddle.net/BeerusDev/q9gcms4r/4/
domoption. Thedomoption in your question appears to contain the digit1, whereas I think you meant to type the letterl(for the length change control). See here.domoption - but if a resource is missing, then that alone may not be sufficient.