一、实验目的
1、掌握C语言中数组的基本概念和操作方法。
2、学会使用C语言实现数组的排序算法。
3、提高编程能力和解决实际问题的能力。
二、实验内容
1、编写一个C语言程序,实现以下功能:
- 定义一个整型数组,存储用户输入的10个整数。
- 对数组进行冒泡排序。
- 输出排序后的数组。
2、编写一个C语言程序,实现以下功能:
- 对数组进行选择排序。
3、编写一个C语言程序,实现以下功能:
- 对数组进行插入排序。
4、编写一个C语言程序,实现以下功能:
- 对数组进行快速排序。
三、实验步骤
1、我们需要包含头文件stdio.h
,以便使用标准输入输出函数。
#include <stdio.h>
2、接下来,我们定义一个整型数组,用于存储用户输入的10个整数,我们需要创建一个长度为10的整型变量数组,用于存储用户输入的每个整数。
int arr[10]; int input[10];
3、然后,我们需要编写一个循环,用于接收用户输入的10个整数,并将它们存储在input
数组中,我们需要将input
数组中的整数复制到arr
数组中。
printf("请输入10个整数:"); for (int i = 0; i < 10; i++) { scanf("%d", &input[i]); arr[i] = input[i]; }
4、接下来,我们需要编写一个冒泡排序函数,用于对arr
数组进行排序,冒泡排序的基本思想是:每次比较两个相邻的元素,如果它们的顺序错误就把它们交换过来,每一轮循环结束后,最大的元素就会被交换到数组的末尾,重复这个过程,直到整个数组有序。
void bubble_sort(int arr[], int n) { for (int i = 0; i < n - 1; i++) { for (int j = 0; j < n - 1 - i; j++) { if (arr[j] > arr[j + 1]) { int temp = arr[j]; arr[j] = arr[j + 1]; arr[j + 1] = temp; } } } }
5、在主函数中,我们需要调用冒泡排序函数,对arr
数组进行排序,并输出排序后的数组。
bubble_sort(arr, 10); printf("排序后的数组:"); for (int i = 0; i < 10; i++) { printf("%d ", arr[i]); } printf(" ");
6、根据以上步骤,我们可以编写其他排序算法(如选择排序、插入排序、快速排序等)的程序,并输出排序后的数组,这里不再赘述。
四、实验总结
通过本次实验,我们掌握了C语言中数组的基本概念和操作方法,学会了使用C语言实现数组的排序算法,我们还提高了编程能力和解决实际问题的能力,在今后的学习和工作中,我们将继续努力,不断提高自己的编程水平。
发表评论