三九宝宝网宝宝教育教学论文

c语言任意排序

02月22日 编辑 39baobao.com

[C语言冒泡排序]#include<stdio.h> #define MAX 10 // #include <stdio.h> #define N 10 int main (){ int i,j,t,a[N]; printf("please input ten numbers:\n"); for (i=0;i<N;i++) scanf("%d...+阅读

#include

#include

void SelectSort(int a[], int n) // 选择排序

{

int i, j, small;

int temp;

for (i = 0; i < n - 1; i++)

{

small = i;

for (j = i + 1; j < n; j++)

{

if (a[j] < a[small])

{

small = j;

}

}

if (small != i)

{

temp = a[i];

a[i] = a[small];

a[small] = temp;

}

}

printf("选择排序的结果如下:");

for (i = 0; i < n; i++)

{

printf("%d ", a[i]);

}

printf("\n");

}

void BubbleSort(int a[], int n) // 冒泡排序

{

int i, j, flag = 1;

int temp;

for (i = 1; (i < n) && (flag == 1); i++)

{

flag = 0;

for (j = 0; j < n - 1; j++)

{

if (a[j] > a[j + 1])

{

flag = 1;

temp = a[j];

a[j] = a[j + 1];

a[j + 1] = temp;

}

}

}

printf("冒泡排序的结果如下:");

for (i = 0; i < n; i++)

{

printf("%d ", a[i]);

}

printf("\n");

}

int main(void)

{

int i;

int num;

int *pointer = NULL;

printf("请输入数字的个数:");

scanf("%d", &num);

pointer = (int*)malloc(sizeof(int) * num); // 分配空间

for (i = 0; i < num; i++)

{

scanf("%d", &(*(pointer + i))); // 输入数据

}

SelectSort(pointer, num);

BubbleSort(pointer, num);

return(0);

}

以下为关联文档:

C语言冒泡排序法是怎么排序C语言冒泡排序法的排2113序规则:5261 将被排序的记录4102数组R[1..n]垂直排列,每个记录R看作是重量为R.key的气泡1653。根据轻气泡不能在重气泡之下的原则,从下往上扫描数组R:凡...

C语言选择法排序任意输入十个数:从大到小从小到大#include "stdlib.h" #include "stdio.h" void select_sort(int data[],int start_index,int data_num) {//start_index:数组开始的下标 data_num:数据的数目 int temp; int min_i...

c语言如何读取任意格式的文件对于程序来说,不管后缀名如何,文件分为两种类型:文本文件和二进制文件。 C语言里有一系列文件操作函数。区分文本和二进制文件,需要在打开文件时设置不同的控制符mode的变量即可...

c语言基数排序如图 这个基数排序你是要LSD呢还是MSD?我暂时用系统自带快排代替。而且基数排序要根据待排序对象的特征来专门设计,所以系统库中也不会有基数排序。(你这100分悬赏,哎,不如再开...

C语言选择排序/*帮你写好了*/ #include <stdio.h> #include <conio.h> void SelectSort ( int array[], int nSize ) { int nMinIndex; int nIndex_1, nIndex_2; for (nIndex_1 = 0;nInde...

C语言数组排序#include<stdio.h> void main() { int a[10] = { 10,2,3,4,5,6,9,8,7,1 }; int i,j,t; for(j=0;j<10;j++) for(i=0;i<10-1-j;i++) if(a[i]>a[i+1]) /* 由小到大,由大到小时改...

C语言。数组排序函数数组函数排序//#include "stdafx.h"//vc++6.0加上这一行. #include "stdio.h" void Sort(int *p,int n){ int i,j,k; for(i=0;i<10;i++){ for(k=i,j=i+1;j<10;j++) if(p[k]>p[j]) k=j; if(k!...

选择排序冒泡排序 C语言从程序运行需要的时间和储存空间来看,这两个吧,选择排序用的时间较少。我给你举个例子,这是一个比较直观的例子: 有十个数:10,9,8,7,6,5,4,3,2,1 。将他们按从小到大的顺序排成一...

C语言实现冒泡排序选择排序插入排序及其移动次数你说的排序我给你源代码,在代码里面简单的说了一下算法思想。如果是要学习,我建议去看书和看别人的博客,明白排序的思想,只有明白了算法的思想,才能轻易的看懂排序的代码。我的代...

推荐阅读
图文推荐