范文无忧网公文文书入党入团

C语言关于冒泡排序问题求解

02月27日 编辑 fanwen51.com

[高分急C语言如何实现多线程有具体方案请提供!]你这个问题可是超过200分的啊, 这个往大了说是一个比较复杂的设计方案。 实际上C语言是没有多线程的概念的,但是我们可以通过Task来实现多任务。 简单的说,可以采取以下方案: 定...+阅读

C语言关于冒泡排序问题求解

冒泡排序的基本思想:

两两比较待排序记录的关键字,发现两个记录的次序相反时即进行交换,直到没有反序的记录为止。 以下是正确代码:

main() { int i,j,temp; int a[10]; for(i=0;i<10;i++) scanf ("%d,",&a[i]); for(j=0;j<=9;j++) { for (i=0;i<10-j;i++) if (a[i]>a[i+1]) { temp=a[i]; a[i]=a[i+1]; a[i+1]=temp;} } for(i=1;i<11;i++) printf("%5d,",a[i] ); printf("\n"); }

C语言冒泡法排序问题

#include"stdio.h" main() { int a[5],*p,i,t,j; for(i=0;i<5;i++) scanf("%d",&a[i]); printf("\n"); for(i=0;i<5;i++) //改成for(i=0;i<4;i++) { for(j=0;j<5;j++)//改成for(j=0;j<4-i;j++) if(a[j]>a[j+1]) { t=a[j]; a[j]=a[j+1]; a[j+1]=a[j];//改成a[j+1]=t; } } for(i=0;i<5;i++) printf("%d",a[i]);

C语言冒泡排序的问题

#include #include "conio.h" void main() { int a[5],i,j,t; for(i=0;i<5;i++) scanf("%d",&a[i]); for(i=0;i<4;i++) { for(j=0;j<4-i;j++) { if(a[j]>a[j+1])

{ t=a[j]; a[j]=a[j+1];a[j+1]=t; } } } printf("The sorted numbers:\n"); for(i=0;i<5;i++) printf("%3d",a[i]); printf("\n"); getch(); }

程序有点小错误,已经用粗体标示并修改。

冒泡排序每进行一轮都要把最大的数排到本轮的最后一个位置。

如果是5个元素,第一轮要把最大元素放到a[4],第二轮余下最大的元素放到a[3],依次类推,最后一轮,就剩下a[0]了。所以内循环需要比较的是a[j]和a[j+1]。

C冒泡法排序

答案: 5、D 6、A 7、C 8、C 完整源程序如下: #include void main( ) { int i,j,t,a[10]; printf("Enter 10 integers: "); for (i=0;i<10;i++) scanf("%d", &a[i]); for (i=1;i<10;i++) for ( j=0 ; j<10-i ;j++) if( a[j] < a[j+1] ){ t =a[j]; a[j]=a[j+1]; a[j+1]=t; } printf("After sorted: "); for(i=0;i<10;i++) printf("%d ",a[i]); printf("\n"); }

延伸阅读:

C中冒泡排序的算法思想private void bubble_sort(int[] a, int size) { bool flag = true; int temp = 0; /* Temporary value for swapping two elements */ for (int i = 0; i { flag = true; f...

冒泡法和选择法排序的思想冒泡和快速排序的区别在于:冒泡算法,每次比较如果发现较小的元素在后面,就交换两个相邻的元素。将待排序的元素看作是竖着排列的"气泡",较小的元素比较轻,从而要往上浮。在冒泡排序...

C冒泡排序的基本思想和步骤冒泡排序顾名思义就是大的下沉,小的上浮,当然,可以扩展为小的下沉,大的上浮 比如有以下数据 源数据 B E D C A 第一轮 B D C A E 第二轮 B C A D E 第三轮 B A C D E 第四轮 A B...

具体要求: 1熟悉和了解冒泡排序的算法思想和基本理论并通过//flag为标记位 void bubble_sort(int array[],int n) { int i,j,flag,temp; for (i = 0; i { flag = 1; for (j = 0; j { if (array[j] >array[j+1]) { temp= array[j]; ar...

C语言冒泡排序法的详细注释/* 用冒泡排序法对一维整型数组中的十个数升序排序 */ #include <stdio.h> int main() {int i,j,t,a[10]; printf("Please input 10 integers:\n"); for(i=0;i<10;i++) scanf(...

用c语言表达起泡排序算法的核心思想冒泡排序法的基本思想是: 第一:在a[0]到a[N-1]的范围内,依次比较两个相邻元素的值, 若a[J]>a[J+1],则交换a[J]与a[J+1],J的值取0,1,2,……,N-2;经过这样一趟冒泡,就把这N个数中最大的...

Lua和C之间关于数据交换问题解决方案是什么你好,很高兴为您解答。 如果要获取的是一个数组(所谓数组,其实就是key是从1开始的数字序列的table,并且值类型相同),用lua_next可以遍历这个数组:首先lua_pushnil,压入一个空值,然后w...

链式基数排序的算法思想C语言越多越仔细越好参考 /* 基数排序的算法源程序*/ #include#define D 3 /* D为排序码的最大位数 */ #define R 10 /* R为基数 */ typedef int KeyType; typedef int DataType; struct Node; /...

求计算机机房管理C语言程序/* Note:Your choice is C IDE */ #include "stdio.h" #include <time.h> #define N 60 int k=1; int i; time_t rawtime; time_t rawtime1; struct tm * timeinfo1; struct a...

推荐阅读
图文推荐
栏目列表