C语言:采用冒泡排序方法,对10个数按由小到大的的顺序排序
给大家介绍冒泡排序的Scratch做法
#include int main(){ int a[10];//用来存数据 int i,j,temp; for(i = 0; i a[i + 1]) { temp = a[i]; a[i] = a[i + 1]; a[i + 1] = temp; } } for(i = 0; i < 10; i ++)//输出。 printf("%d ",a[i]); printf("
"); return 0;}
代码如下(对10个整数进行升序排序):
#include<stdio.h>
int main()
{
int i,j,t,a[10]={5,4,8,3,6,9,7,222,64,88};
//排序
for(i=1;i<10;i++)//外循环控制排序趟数,n个数排n-1趟
{
for(j=0;j<10-1;j++)//内循环每趟比较的次数,第j趟比较n-i次
{
if(a[j]>a[j+1])//相邻元素比较,逆序则交换
{
t=a[j];
a[j]=a[j+1];
a[j+1]=t;
}
}
}
printf("排序后的结果是:
");
for(i=0;i<10;i++)
{
printf("%d",a<i>);
}
printf("
");
return 0;
}
冒泡法:
算法分析:如果有n个数,则要进行n-1趟比较。在第1趟比较中要进行n-1次相邻元素的两两比较,在第j趟比较中要进行n-j次两两比较。比较的顺序从前往后,经过一趟比较后,将最值沉底(换到最后一个元素位置),最大值沉底为升序,最小值沉底为降序。
扩展资料:
include用法:
#include命令预处理命令的一种,预处理命令可以将别的源代码内容插入到所指定的位置;可以标识出只有在特定条件下才会被编译的某一段程序代码;可以定义类似标识符功能的宏,在编译时,预处理器会用别的文本取代该宏。
插入头文件的内容
#include命令告诉预处理器将指定头文件的内容插入到预处理器命令的相应位置。有两种方式可以指定插入头文件:
1、#include<文件名>
2、#include"文件名"
如果需要包含标准库头文件或者实现版本所提供的头文件,应该使用第一种格式。如下例所示:
#include<math.h>//一些数学函数的原型,以及相关的类型和宏
如果需要包含针对程序所开发的源文件,则应该使用第二种格式。
采用#include命令所插入的文件,通常文件扩展名是.h,文件包括函数原型、宏定义和类型定义。只要使用#include命令,这些定义就可被任何源文件使用。如下例所示:
#include"myproject.h"//用在当前项目中的函数原型、类型定义和宏
你可以在#include命令中使用宏。如果使用宏,该宏的取代结果必须确保生成正确的#include命令。例1展示了这样的#include命令。
【例1】在#include命令中的宏
#ifdef _DEBUG_
#define MY_HEADER"myProject_dbg.h"
#else
#define MY_HEADER"myProject.h"
#endif
#include MY_HEADER
当上述程序代码进入预处理时,如果_DEBUG_宏已被定义,那么预处理器会插入myProject_dbg.h的内容;如果还没定义,则插入myProject.h的内容。
这是原始的冒泡法:
main()
{ int a[10]={……},i,j,t;
for( i=0;i<10;i++ )
printf("%5d",a[i]);
for( i=0;i<10;i++ )
for( j=0;j<10-1;j++ )
if( a[j]>a[j+1] )
{ t=a[j];
a[j]=a[j+1];
a[j+1]=t;
}
for( i=0;i<10;i++ )
printf("%5d",a[i]);
}
这是改良后的冒泡排序:
main()
{ int a[10]={……},i,j,t;
for( i=0;i<10;i++ )
printf("%5d",a[i]);
for( i=0;i<10-1;i++ )
for( j=i+1;j<10;j++ )
if( a[i]>a[j] )
{ t=a[i];
a[i]=a[j];
a[j]=t;
}
for( i=0;i<10;i++ )
printf("%5d",a[i]);
}
冒泡排序方法的代码如下:
#include<stdio.h>
void main()
{ int i,j,k,a[10];
printf("qingshurushuzu :\n");
for(i=1;i<=10;i++)
scanf("%d",&a[i]);
for(i=1;i<=9;i++)
{for(j=i+1;j<=10;j++)
{if(a[j]>a[i])
{k=a[i];a[i]=a[j];a[j]=k;}
}
}
printf("qingyoudadaoxiaoshuchu: \n");
for(i=1;i<=10;i++)
printf("%d\n",a[i]);
}
这个是我找的,知道里面没有的。
代码如下(对10个整数进行升序排序):
#include<stdio.h>
int main()
{
int i,j,t,a[10]={5,4,8,3,6,9,7,222,64,88};
//排序
for(i=1;i<10;i++)//外循环控制排序趟数,n个数排n-1趟
{
for(j=0;j<10-1;j++)//内循环每趟比较的次数,第j趟比较n-i次
{
if(a[j]>a[j+1])//相邻元素比较,逆序则交换
{
t=a[j];
a[j]=a[j+1];
a[j+1]=t;
}
}
}
printf("排序后的结果是:\n");
for(i=0;i<10;i++)
{
printf("%d",a<i>);
}
printf("\n");
return 0;
}
用函数调用的方法编程:从键盘输入10个数,用冒泡法对10个数按由小到大顺序排序,并输出。/***...
C语言,大牛推荐的七大经典排序算法
C语言大牛雅荐的七大经典排序算法 1.冒泡排序 比较相邻的元素。如果第一个比第二个大,就交换它们两个对每一对相邻元素作同样的工作,从开始第一对到结尾的最后一对,这样在最后的元素应该会是最大的数;针对所有的元素重复以上的步骤,除了最后一个;重复步骤1~3,直到排序完成。 2.选择排序 在未排序序列中找到最...
C语言中冒泡排序法和选择排序法有哪些不同
2>.在掌握了程序的基本思想之后,再进行排序。找到最大的下标后赋给k。找到之后判断所假设的当前值是否为此次循环的最大值,如果不是,就交换a[k] 与当前a[i]的值,从而将数组以一定的顺序排放,最后写一个循环将结果输出。冒泡排序:1>.对于冒泡排序,主要采用的是相邻数两两进行比较的思想。如果...
C语言:编写函数,用冒泡法对一组数按从小到大的顺序进行3轮排序?
include "stdio.h"void fun(int a[],int n){ int i,j,t;for(i=0; i<3; i++)for(j=0; j<n-1-i; j++)if(a[j]>a[j+1]){ t=a[j];a[j]=a[j+1];a[j+1]=t;} } main(){ int a[10],i;for(i=0; i<10; i++)scanf("%d",&a[i]);fun(a,10);for(i...
C语言编程——冒泡排序法。要求:由主函数调用排序子函数,对n个整数进 ...
include<stdio.h> void sort(int a[],int n){ int i;int j;for(i=1;i<n;i++) \/\/n个程序 排n-1次 { for(j=0;j<n-i;j++){ if(a[j]>a[j+1]) \/\/从小到达,前面的比后面的大,则互换。{ int temp = a[j];a[j] = a[j+1];a[j+1] = temp;} } } } i...
用冒泡排序对8个学生的c语言成绩由低到高进行排序
include <stdio.h>int main(){int a[8]={1,5,4,2,3,6,9,8};int i,j,t;for(i=0;i<8;i++){for(j=i;j<8;j++){if(a[i]>a[j]){t=a[i];a[i]=a[j];a[j]=t;}}}for(i=0;i<8;i++)printf("%d ",a[i]);return 0;} ...
编写一个程序,实现冒泡排序,将输入的n个整数按降序进行排序,并...
如图所示:short:修饰int,短整型数据,可省略被修饰的int。(K&R时期引入)long:修饰int,长整型数据,可省略被修饰的int。(K&R时期引入)long long:修饰int,超长整型数据,可省略被修饰的int。(C99标准新增)signed:修饰整型数据,有符号数据类型。(C89标准新增)unsigned:修饰整型数据,无符号...
一道C语言题目,编写函数用冒泡排序法对数组中的数据进行从小到大的排序...
1、新建一个163.php。2、输入php网页的结构(<?php?>)。3、声明PHP与浏览器交互的文件类型和编码。4、使用 array() 函数定义一个$numbers数组。5、使用 sort() 函数对数组 $numbers 中的元素进行排序。6、使用 print_r() 函数,输出排序后的数组。7、运行网页,在浏览器中输出排序后的数组。
编程题:用冒泡排序法将一维数组A[10]={1、2、4、3、6、5、7、8、9...
C语言???include "stdio.h"void bubble_sort(int array[],int n){\/\/冒泡法排序 int i,j,flag,temp;for(i = 0; i < n-1; i++){ flag = 1;for(j = 0; j < n-i-1; j++){ if(array[j] > array[j+1]){ temp = array[j];array[j] = array[j+1];array[j+1]...
c语言编程:对10个数冒泡排序(升序)。
include <stdio.h> int main(){ int number[10] = {95, 45, 15, 78, 84, 51, 24, 12,34,23};for (int j = 0; j < 9; j++)for (int i = 0; i < 9 - j; i++) { if(a[i] > a[i + 1]) { int temp = a[i];a[i] = a[i + 1];a[i + 1] ...
求关于c语言 冒泡排序法的讲解
冒泡排序法是简单的排序方法之一,它和气泡从水中往上冒的情况有 些类似。其具体做法是 (1)对于数组a中的1至n个数据,先将第n个和第n-1个数据进行比较,如果 a(n)
才旦黎止痛:[答案] 冒泡法: #define N 10 #include
阿巴嘎旗15175096728: c语言用冒泡法选择法从键盘任意输入十个小写字母,按从大到小的顺序排序输出. - ?
才旦黎止痛: 1 输入; 2 排序; 3 输出. 参考代码如下: #include <stdio.h> int main() {int a[10];//用来存数据int i,j,temp; for(i = 0; i < 10; i ++)//输入10个数.scanf("%d",&a[i]);for (j = 0; j < 9; j++)//标准冒泡法排序for (i = 0; i < 9- j; i++){if(a[i] > a[i + ...
阿巴嘎旗15175096728: 采用冒泡排序方法,对10个数按由小到大的顺序排列的c语言程序 - ?
才旦黎止痛: #include <stdio.h> int main() {int a[10];//用来存数据int i,j,temp; for(i = 0; i < 10; i ++)//输入10个数.scanf("%d",&a[i]);for (j = 0; j < 9; j++)//标准冒泡法排序for (i = 0; i < 9- j; i++){if(a[i] > a[i + 1]){temp = a[i];a[i] = a[i + 1];a[i + 1] = ...
阿巴嘎旗15175096728: C语言 用一个函数来实现对10个数进行冒泡排序 - ?
才旦黎止痛: #include "stdio.h" int exchange(char a[10]) //char {int i,j,t; for(i=0;i<10;i++)for(j=0;j<9-i;j++)if (a[j]<a[j+1]){t=a[j];a[j]=a[j+1];a[j+1]=t;} return(1); } void main() {char a[10]; //charprintf("please put numbers:");scanf("%s",a);exchange(a);printf("%s",a); }你是对10个字符串排序把
阿巴嘎旗15175096728: c语言中用冒泡排序法排列任意输入的10个数,用程序输出排列的具体过程,谢谢 - ?
才旦黎止痛: //回答补充,晕,原来是这样的过程,我把以前的过程删除了,下面:#include <stdio.h>#define N 10int main() {int nArray[N];int i=0,n=1; printf("请输入数组数据:\n");for(i=0;i<N;i++){scanf("%d",&nArray[i]);} printf("原始数...
阿巴嘎旗15175096728: c语言冒泡法对10个整数排序 - ?
才旦黎止痛: #include<stdio.h> int main() { int i,j,temp; int a[10]={12,25,6,8,78,95,47,35,2,13}; for(i=0; i<10-1;i++){ //排序次数 for(j=0;j<10-1-i;j++){ //10-1-i到10-1已经排好 if(a[j]>a[j+1]){ //每次找到最大的,放在最后 temp=a[j]; a[j]=a[j+1]; a[j+1]=temp; } } } for(i=0;i<10;i++){ printf("%d ",a[i]); } printf("\n"); return 0; }
阿巴嘎旗15175096728: 用C语言,随机输入10个整数,用冒泡排序法对这些整数进行从小到大排序,输出排序前和排序后的数的顺序. - ?
才旦黎止痛: C语言随机输入10个整数的源代码如下: #include"stdio.h" void fun(int a[]) { int i,j,t; for(i=0;i<9;i++) for(j=i+1;j<10;j++) if(a[i]>a[j]) {t=a[i];a[i]=a[j];a[j]=t;} } void main() { FILE *wf; int a[10]; int b[10]={9,10,11,12,1,2,3,4,0,1}; int c[10]={1,2,3,4,13,14,15,16,...
阿巴嘎旗15175096728: C语言编程:用冒泡法对10个整数排序.急?
才旦黎止痛: void main(){ int A[10]; int i,j; int temp; for(i = 0;i<10;i++) scanf("%d",&A[i]); for(i = 0;i<10;i++) for(j=i+1;j<10;j++) if(A[i]>A[j]) { temp = A[i]; A[i] = A[j]; A[j] = temp; } }
阿巴嘎旗15175096728: C语言程序题:用冒泡排序法对10个整数按照由小到大的顺序进行排序?
才旦黎止痛: #include "stdio.h" void main() { int a[10]; printf("Input 10 numbers!"); printf("\n"); for(int i=0; i<10; i++) { scanf("%d",&a[i]); } printf("The result:"); for(i=9; i>0; i--) { for(int j=0; j<i; j++) { if(a[j] > a[j+1]) { int temp = a[j]; a[j] = a[j+1]; ...
阿巴嘎旗15175096728: C语言冒泡法排序:任意输入十个数排序(从小到大;从大到小) - ?
才旦黎止痛: #include"stdio.h" //从小到大排序 void main() { int i,j,t,str[10]; printf("请给数组str赋初值:\n"); for(i=0;i<10;i++) //对数组进行初始化 scanf("%d",str[i]); for(j=1;j<10;j++) //开始进行排序 for(i=0;i<10-j;i++) if(str[i]>str[i+1]) // //因为是从小到...