用冒泡法对10个整数排序

作者&投稿:皇叔 (若有异议请与网页底部的电邮联系)
用冒泡法对10个整数由小到大进行排序~

经典排序之冒泡排序

选择排序算法C语言的实现
选择法排序原理:一次选定数组中的每一个数,记下当前位置并假设它是从当前位置开始后面数中的最小数min=i,从这个数的下一个数开始扫描直到最后一个数,并记录下最小数的位置min,扫描结束后如果min不等于i,说明假设错误,则交换min与i位置上数。 具体实现代码如下:
#include
/****************************************
**选择排序法对十个整数进行排序 ***
****************************************/
//n为数组长度;
void sort(int a[],int n)
{
int temp,min;
for(int i=0;i<n;i++)
{
min=i;//先假设最小下标为i
for(int j=i+1;j<n;j++)
if(a[j]<a[min])
min=j;//对i之后的数进行扫描将最小的数赋予min
if(min!=i)
{
temp=a[i];
a[i]=a[min];
a[min]=temp;
}//判断min与i是否相等,若=则说明原假设正确反之交换数值
}
}
//用main函数验证
void main()
{
int a[10];
printf("please input the array a:
");
for(int i=0;i<10;i++)
scanf("%d",&a[i]);
sort(a,10);

for(i=0;i<10;i++)
printf("%d",a[i]);
}
冒泡排序法
char array[5]={'2','3','4','1','6'};
int i;
int j;
char temp;
int k;

for(i=0;i<5;i++)
{

for(j=0;j<4-i;j++)
{
if(array[j]>array[j+1])
{
temp=array[j];
array[j]=array[j+1];
array[j+1]=temp;
}
}

}

(3)解析:∵函数h(x)=ln(1+x^2)-(1/2)f(x)-k 
函数h(x)=ln(1+x^2)-(1/2)(x^2-2)-k 
令h’(x)=2x/(1+x^2)-x=0 
X1=-1,x2=0,x3=1 
h”(x)=(2-2x^2)/(1+x^2)^2-1, h”(x1)= h”(x3)=-1<0, h”(0)=1>0 
∴h(x)在x1,x3处取极大值h(-1)=h(1)=ln2+1/2-k;在x2处取极小值h(0)=1-k 
∴当k= ln2+1/2时,函数h(x)零点个数为2; 
当k>ln2+1/2时,函数h(x)零点个数为0; 
当1 当k=1时,函数h(x)零点个数为3 
当k<1时,函数h(x)零点个数为2;

if(a[i] >a[i+1] ) a[i]和a[i+1]互换


C语言用冒泡法和选择法对10个数进行排序
include<stdio.h> \/ 选择排序法对十个整数进行排序 \/ \/\/n为数组长度;void sort(int a[],int n){ int temp,min;for(int i=0;i<n;i++){ min=i;\/\/先假设最小下标为i for(int j=i+1;j<n;j++)if(a[j]<a[min])min=j;\/\/对i之后的数进行扫描将最小的数赋予min if(min!=i...

1.从键盘输入10个整数存放于数组中,并从小到大进行排序,并把排序结果...
int[] x = new int[10];for(int i = 0; i<x.length ; i++){ System.out.print("请输入第" +(i+1)+"个数:" );x[i] = input.nextInt() ; \/\/循环接受键盘数据 } for(int j =0;j<x.length ; j++){ \/\/把接受到的数组,进行冒泡排序 for(int y=j+1 ; y<x.length ...

...元素是10个0~100之间的随机整数用冒泡排序法对这10个随机整数进行从...
Sub x() Dim arr(1 To 10) As Integer, i, j, k '产生随机数 For i = LBound(arr) To UBound(arr) arr(i) = Int(Rnd * 100) Next i MsgBox "随机生成的数据是:" & Join(arr, ",") '排序 For i = LBound(arr) To UBound(arr) - 1 k = ...

从键盘输入10个整数,排序后从小到大输出。
include<stdio.h> int main(){ int a[10];int i,j;int temp;printf("请输入10个整数:");for(i=0;i<10;i++){ scanf("%d",&a);} for(i=0;i<9;i++){ for(j=0;j<9-i;j++){ if(a[j]>a[j+1]){ temp=a[j];a[j]=a[j+1];a[j+1]=temp;} } } printf("...

C语言编程,输入10个整数,分别按顺序和逆序输出
C语言通过输入十个整数然后分别顺序和逆序输出的编程思想和方法如下:1.首先需要定义一个整型数组用于存储输入的10个整数。这里定义一个数组a。2.然后利用for循环,接受从键盘输入的10个整数。这里使用i作为循环的游标变量。3.输入完毕后,再次利用for循环来顺序输出存储在数组的十个数。这里同样使用局部...

求C++程序:任意从键盘输入10个整数,按从小到大的顺序排序,并输出结果...
方法步骤如下:1.首先,定义一个结构,包括数值、排名和序号。2.定义结构数组变量d,保存所有整数信息。3.接下来,定义一个自定义函数来比较整数序列中任意两个整数的大小。4.定义一个自定义函数,比较整数序列中任意两个数字的序数大小。5.在主函数中,首先定义两个整数,并保存整数个数和排名计数...

C语言程序 用选择法对十个数排序
include <stdio.h> int main(){int i,j,min,temp,a[11];printf("enter data:\\n");for (i=1;i<=10;i++){printf("a[%d]=",i);scanf("%d",&a[i]);} printf("\\n");printf("The orginal numbers:\\n");for (i=1;i<=10;i++)printf("%5d",a[i]);printf("\\n");for...

用选择法对10个整数排序。10个整数用scanf函数输入。
include<stdio.h> void main(){ int i,j,min,temp,a[11];printf("enter data;\\n");for(i=1;i<=10;i++){printf("a[%d]=",i);scanf("%d",&a);} printf("\\n");printf("The original numbers:\\n");for(i=1;i<=10;i++)printf("%5d",a);printf("\\n");for(i=1;i<...

C语言:对输入的十个数进行从小到大排序
3、接着编写主函数,主函数中定义一个数组,然后用scanf接受数组,用户输入10个数以后,会将数存在数组array中,然后调用上面处理排序的函数,函数的输入就是刚才输入的数,最后在把排序的结果输出即可:4、最后编译运行,输入10个数,最后控制台输出了排序的结果,证明程序的逻辑是没有问题的。以上就是C...

C语言编程——冒泡排序法。要求:由主函数调用排序子函数,对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;} } } } int main(){ int a[10]={1,3,5,7,9,2,4...

吉林省15721953970: 利用冒泡法,对输入的10个整数进行排列 -
禹皆金刚: void sort(int p[],int n) {int i,j,temp;for(i=0;i<n-1;i++)for(j=i+1;j<n;j++)if(p[i]>p[j]){temp=p[i];p[i]=p[j];p[j]=temp;} } 不知道这样会不会好理解一点? 另外对这种排序用qsort库函数会快一些. #include<stdlib.h>

吉林省15721953970: 输入10个整数,用冒泡法对这10个整数进行从大到小排序 -
禹皆金刚:[答案] #includemain() { int i,k,temp,n=10; int a[10]; for(i=0;i

吉林省15721953970: 用“冒泡法”对10个整数进行排序,使其数组元素的值按从大到小的顺序排列. -
禹皆金刚: #include "stdio.h" #define N 10 void main() { int i,j,k,a[N]={ 1,3,2,5,4,8,9,7,6,10 };for ( i=0;i<N-1;i++ ) //i的取值0~8for ( j=N-1;j>i;j-- ) //j的取值9~(i+1)if ( a[j-1]<a[j] ) { k=a[j-1]; a[j-1]=a[j]; a[j]=k; } //比较j-1和j位置的数,满足条件冒泡for ( i=0;i<N;i++ ) printf("%d ",a[i]); printf("\n"); }

吉林省15721953970: “冒泡排序法”对任意10个整数按由大到小的顺序排列 -
禹皆金刚:[答案] #define N 10 main() { int a[N]; int i,j,temp; for(i=0;i
吉林省15721953970: 用冒泡法对10个任意随机整数进行从大到小排列 -
禹皆金刚:[答案] 冒泡排序的算法效率一般.一般用交换排序或者是函数库中自带的排序方法.这是JAVA版的.function bubbleSort(int[] input) { for (int i =0; i解析看不懂?免费查看同类题视频解析查看解答

吉林省15721953970: 输入10个数 用冒泡法排序 -
禹皆金刚: 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 + ...

吉林省15721953970: 1. 从键盘输入10个整数,采用冒泡排序法从大到小排序并输出. -
禹皆金刚: #include<stdio.h> #include<malloc.h> void print(int *a,int n); void paixu(int *a,int n); void main() {int a[10];int i;printf("请输入10个整数:");for(i=0;i<10;i++)scanf("%d",&a[i]);paixu(a,i);//排序print(a,i);//输出 } int swap(int *a,int *b)//...

吉林省15721953970: 用冒泡法对10个整数排序,10个数用scanf函数输入 -
禹皆金刚: 展开全部#include #define N 10 int main() { int num[N]; int i,j,temp; for(i = 0; i scanf("%d",num + i); for(i = 0; i { for(j = N - 1; j > i; j --) { if(num[j] { temp = num[j]; num[j] = num[j - 1]; num[j - 1] = temp; } } } for(i = 0;i printf("%d ",num[i]); printf("\n"); return 0; }

吉林省15721953970: C语言用冒泡法和选择法对10个数进行排序 -
禹皆金刚:[答案] 冒泡法: #define N 10 #include maopao(int a[N]) { int i,j,t; for(j=0;ja[i+1]) { t=a[i]; a[i]=a[i+1]; a[i+1]=t; } printf("排序后的数组为:\n"); for(i=0;i
吉林省15721953970: 用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,...

本站内容来自于网友发表,不代表本站立场,仅表示其个人看法,不对其真实性、正确性、有效性作任何的担保
相关事宜请发邮件给我们
© 星空见康网