Index: src/wp-admin/includes/template.php
===================================================================
--- src/wp-admin/includes/template.php	(revision 43171)
+++ src/wp-admin/includes/template.php	(working copy)
@@ -886,17 +886,25 @@
  * Print out option html elements for role selectors.
  *
  * @since 2.1.0
+ * @since 4.9.7 Added $roles_to_exclude argument.
  *
  * @param string $selected Slug for the role that should be already selected.
+ * @param array  $roles_to_exclude Array of roles to not list in dropdown.
  */
-function wp_dropdown_roles( $selected = '' ) {
+function wp_dropdown_roles( $selected = '', $roles_to_exclude = array() ) {
 	$r = '';
 
 	$editable_roles = array_reverse( get_editable_roles() );
 
+	if ( ! empty( $roles_to_exclude ) ) {
+		foreach ( $roles_to_exclude as $role_to_exclude ) {
+			unset( $editable_roles[ $role_to_exclude ] );
+		}
+	}
+
 	foreach ( $editable_roles as $role => $details ) {
 		$name = translate_user_role( $details['name'] );
-		// preselect specified role
+		// preselect specified role.
 		if ( $selected == $role ) {
 			$r .= "\n\t<option selected='selected' value='" . esc_attr( $role ) . "'>$name</option>";
 		} else {
Index: src/wp-admin/options-general.php
===================================================================
--- src/wp-admin/options-general.php	(revision 43171)
+++ src/wp-admin/options-general.php	(working copy)
@@ -147,7 +147,7 @@
 <tr>
 <th scope="row"><label for="default_role"><?php _e( 'New User Default Role' ); ?></label></th>
 <td>
-<select name="default_role" id="default_role"><?php wp_dropdown_roles( get_option( 'default_role' ) ); ?></select>
+<select name="default_role" id="default_role"><?php wp_dropdown_roles( get_option( 'default_role' ), array( 'administrator' ) ); ?></select>
 </td>
 </tr>
 
