一纬数组
#include "stdio.h"
void main()
{
int i,a[10]={9,4,6,2,7,0,1,5,3,8};
sort(a+1,10);
for(i =0;i<=9;i++)
{
printf("%3d",*(a+i));
}
}
sort(p,n)
int *p,n;
{
int i,t,*pj;
for(i=1;i<n;i++)
{
for(pj= p+n-1;pj>p+i-1;pj--)
{
if(*(pj-1)>*pj)
{
t=*pj;
*pj=*(pj-1);
*(pj-1)=t;
}
}
}
}
二维数组
#include "stdio.h"
void main()
{
int i,j,a[2][10]={{9,4,6,2,7,0,1,5,3,8},{9,4,6,2,7,0,1,5,3,8}};
printf("Befort sort :\n");
for(i = 0;i<2;i++)
{
for(j=0;j<10;j++)
{
printf("%3d",a[i][j]);
}
printf("\n");
}
/*这里这儿 *(a+1)就是访问第二行 */
sort(*(a+1),10);
printf("\nAfter sort :\n");
for(i =0;i<=1;i++)
{
for(j=0;j<10;j++)
{
printf("%3d",*(*(a+i)+j));
}
printf("\n");
}
}
sort(p,n)
int *p,n;
{
int i,t,*pj;
for(i=1;i<n;i++)
{
for(pj= p+n-1;pj>p+i-1;pj--)
{
if(*(pj-1)>*pj)
{
t=*pj;
*pj=*(pj-1);
*(pj-1)=t;
}
}
}
}
分享到:
相关推荐
总的来说,冒泡排序和选择排序都是基础且实用的排序算法,尽管它们的时间复杂度为O(n^2),在处理大量数据时效率较低,但对于理解排序算法的基本思想和C语言中的指针操作具有重要意义。在实际开发中,更高效的排序...
在C语言中,冒泡排序的实现通常涉及到指针操作和循环控制。 传统的冒泡排序算法时间复杂度为O(n^2),其中n是待排序序列的长度。这种效率在数据量较大的情况下显得较低。为了优化冒泡排序,我们可以引入两个关键策略...
在C语言中,排序通常涉及冒泡排序、选择排序、插入排序、快速排序、归并排序等多种算法。每种算法都有其独特的优缺点,适用于不同的场景。 1. **冒泡排序**:是最基础的排序算法,通过不断交换相邻的逆序元素使数组...
下面将详细解释冒泡排序的工作流程以及如何用C语言编写冒泡排序程序。** ### 冒泡排序算法的基本步骤 1. **初始化**:设定一个n长度的数组,n为待排序元素的数量。 2. **外层循环**:进行n-1次遍历,因为每次遍历...
在C语言中,冒泡排序通常包含以下几个关键步骤: 1. **初始化**: 首先,定义一个数组并填充需要排序的数据。例如,可以创建一个整型数组`int arr[N]`,其中`N`是数组的长度。 2. **外层循环**: 对于数组中的每一个...
最简单的,我看网上的有点不清晰,自己就做出来,存到这里,电脑就不用存了,可以当储存的地方放了
以上就是关于“code4_冒泡排序_”这个主题的主要知识点,通过理解和掌握这些内容,你可以编写出正确的C语言冒泡排序程序,并理解其实现原理和效率分析。在实际编程中,还可以尝试其他优化策略,提升冒泡排序的效率。
以下是一个简单的C语言冒泡排序函数示例: ```c #include void bubbleSort(int arr[], int n) { int i, j, swapped; for (i = 0; i ; i++) { // 外层循环 swapped = 0; // 初始化交换标志 for (j = 0; j ; j+...
查找和排序是算法基础中的重要部分,课程可能讲解了各种常见的查找算法(如线性查找、二分查找)和排序算法(如冒泡排序、快速排序),并结合C语言进行了实现。 6. 非线性结构及数据结构应用举例 - 第13讲:非...
在本例中,"maopao.zip_goose9dd_冒泡排序_结构体信息" 的主题是使用C语言实现对结构体信息的冒泡排序。下面我们将详细探讨这一主题。 首先,结构体在C语言中是一种复合数据类型,它允许我们把不同类型的数据组合在...
在C语言中,冒泡排序可以通过编写相应的函数实现。本教程将深入探讨冒泡排序的工作原理、C语言实现及其优化方法。 一、冒泡排序原理 冒泡排序的核心思想是通过反复遍历待排序的数组,比较相邻元素并根据需要交换...
在C语言中,我们通常会用到指针和循环来实现冒泡排序。 冒泡排序的基本思想是重复地走访过要排序的数列,一次比较两个元素,如果他们的顺序错误就把他们交换过来。走访数列的工作是重复地进行直到没有再需要交换,...
在冒泡排序中,通过比较并交换指针所指向的元素,可以实现对结构体数组的排序。 至于标签中的“c#读写文件”,虽然不在C语言范畴内,但值得一提的是,C#是微软开发的一种面向对象的编程语言,同样支持文件操作。C#...
7. **算法**:排序算法(如冒泡排序、快速排序)、查找算法(如线性搜索、二分查找)等基础算法的C语言实现。 8. **错误处理**:如何使用errno和perror来处理运行时错误。 9. **结构体和联合**:自定义数据类型的...
总结来说,"数据结构C语言版第一章课件严蔚敏"涵盖了数据结构的基础概念,尤其是C语言实现的排序算法,如冒泡排序和快速排序。学习这部分内容对于理解和应用计算机科学中的数据处理至关重要。通过深入研究这些知识点...
9. **排序算法**:可能需要对学生成绩进行排序,如按总分或单科成绩排序,这就需要了解并实现至少一种排序算法,如冒泡排序、选择排序、插入排序或快速排序。 10. **结构化编程**:遵循良好的编程规范,如使用函数...
c语言实现 通过指针调用函数的形式 实现冒泡排序
下面是一个简单的C语言冒泡排序代码示例: ```c #include void bubbleSort(int arr[], int n) { int i, j, temp, swapped; for (i = 0; i ; i++) { // 外层循环控制轮数 swapped = 0; for (j = 0; j ; j++) {...