用“冒泡法对20个整数进行排顺(用C语言编译)

作者&投稿:辉饼 (若有异议请与网页底部的电邮联系)
C语言冒泡排序法~

#include //链接标准头文件
#define N 5 //定义常量N并赋值为5
void main() //主函数入口
{ //表示主函数开始
int i,j; //定义整形变量i和j
int grade[N],temp; //定义N维(N=5,也就是五维啦^^)整形数组和整形变量temp
printf("输入5个数
"); //在屏幕上显式“输入5个数”并且换行
for(i=0;i<N;i++) //开始for循环,从i=0,每次加1,直到i=4,共需循环5次
{ //循环体开始
scanf("%d",&grade[i]); //依次获取用户输入的整数值并存入数组grade中
} //循环结束
for(i=0;i<N;i++) //开始外层for循环,从i=0,每次加1,直到i=4
{ //外层循环体开始
for(j=0;j<N-1-i;j++) //开始外层for循环,从j=0,每次加1直到i等于外层循环的N-j-1
{ //内层循环体开始
if(grade[j]<grade[j+1]) //条件判断
{ //如果整形数组前面的数比其后的小,执行以下语句
temp=grade[j+1]; //将比较大的数赋值给temp
grade[j+1]=grade[j]; //将比较小的数赋值给数组中后面的变量
grade[j]=temp; //将比较大的数赋值给数组中前面的变量
} //从此便完成大小变量的交换,使得大值往前放
} //结束内层循环
} //结外内层循环,完成排序
printf("最后排序为:
");//在屏幕显式“最后排序为:”并换行
for(i=0;i<N;i++) //同开始的for循环类似
{ //开始循环输出
printf("%d",grade[i]); //只是这里要逐个输出数组中的五个数值
} //结束循环输出
printf("
"); //输出换行到屏幕,看不到什么效果,可删掉
} //结束main()函数

根据你的要求,想编程如下:
#include
#define N 10
main()
{
int i,j,k;
int a[N];
printf("
please input %d datas:

",N);
for(i=0;i<N;i++)
scanf("%d",&a[i]);
for(i=0;i<N;i++)
for(j=0;j<N-i;j++)
if(a[j]<a[j+1])
{
k=a[j];
a[j]=a[j+1];
a[j+1]=k;
}
printf("

the sortde numbers are:

");
for(i=0;i<N;i++)
printf("%5d",a[i]);
}
本程序用冒泡法对十个数从大到小排列,这里你还可以根据自己的需要,随时通过改变宏定义N 后的值来输入不同数量的数字。只要改N 后的值就行了。

#include <stdio.h>
void main()
{
int a[20];
int temp;
for(int i=0;i<20;i++)
{
printf("请输入第%d个整数",i+1);
scanf("%d",&a[i]);
}

for(i=0;i<19;i++)
{
for(int j=0;j<19-i;j++){
if(a[j]<a[j+1])
{
temp=a[j+1];
a[j+1]=a[j];
a[j]=temp;
}
}
}
printf("\n排序后为:\n");
for(i=0;i<20;i++){
printf("%d",a[i]);
}
printf("\n")
}

时间有限,写个程序片断:
所用变量:int a[20],maxnum,maxindex
排序:从小到大
for(x=0;x<20;x++)
{
for(y=x+1,maxnum=a[x],maxindex=x;y<20;y++)
{
if(maxnum>a[y])
{
a[maxindex]=a[y];
a[y]=maxnum;
maxindex=y;
}
}
}


用冒泡法对10个整数排序 用c++语言
void change(int a[], int n){ int i,j; int temp; for(i=0;i<n-1;i++) { for(j=i;j<n-i-1;j++) if(a[j]>a[j+1]) { temp=a[j]; a[j]=a[j+1]; a[j+1]=temp; } } } ...

C语言编写函数用冒泡法对数组中10个整数由大到小排序,并在主函数中调用...
include <stdio.h> void fun(int *num){ int temp;for(int i=0; i<10; ++i)for(int j=0; j<10-i-1; ++j){ if(num[j]<num[j+1]){ temp=num[j];num[j]=num[j+1];num[j+1]=temp;} } } void main(){ int num[10]={3,2,4,1,5,6,4,3,9,8};fun(num);fo...

c语言编程题:分别用冒泡法和选择法对输入的10个整数由大到小排序_百度...
include <stdio.h> void maopao(int *a){ int temp=0;for(int i=0;i<10-1;++i)\/\/只需要冒泡9个数最后一个就已经有序了 for(int j=0;j<10-i-1;++j)\/\/j的取值需<10-i-1;为何-1,if(a[j]<a[j+1]){ temp=a[j];a[j]=a[j+1];a[j+1]=temp;} } void xuanze(...

C++:随机生成30个100以内的整数,用冒泡法对其排序并10个一行输出,咋编...
include <stdlib.h> include <iostream> include "time.h"using namespace std;int main(int argc,char *argv[]){ int a[30],i,j,k;srand((unsigned)time(NULL));for(i=0;i<30;a[i++]=rand()%100);\/\/生成30个100以内的整数 for(i=0;i<30;i++)\/\/冒泡 for(j=0;j<29;j++...

冒泡法10个整数从小到大排序是什么?
冒泡排序是一种较为简单的排序算法,需要使用嵌套循环。每一个外循环会将未排序数据中的最大值排到末尾,每一个小循环会将相邻两个数比较大小,从而使较大的数下沉,较小的数上浮。我们需要使用条件转移指令,比较指令(CMP),交换指令(XCHG)。值得一提的是,CMP和XCHG的两个操作数不能同时为内存...

用冒泡法对8个整数从大到小排序并输出?
n = len(nums) # 列表长度 冒泡排序 for i in range(n-1):for j in range(n-i-1):if nums[j] < nums[j+1]:nums[j], nums[j+1] = nums[j+1], nums[j]输出排序结果 print(nums)缩进参照图示,以下是运行效果。运行效果 代码的作用是利用冒泡排序对给定的8个整数进行排序,从...

写一个函数,用冒泡法对输入的6个整数按由小到大的顺序排列
++i) for(j=0;j<N-i-1;++j) if(d[j]>d[j+1]){ t=d[j]; d[j]=d[j+1]; d[j+1]=t; } }int main(){ int i,a[N]; printf("输入%d个整数:",N); for(i=0;i<N;++i) scanf("%d",&a[i]); sort_ascend(...

写一个冒泡法排序函数sort,并在主函数中调用sort函数对10个整数排序
include <stdio.h>#define M 10 void sort(int *a, int size);int main(){ int a[M] = {10, 9, 8, 7, 6, 5, 4, 3, 2, 1};int i = 0;for(i = 0; i < M; i++){ printf("%4d", a[i]);} printf("\\n");sort(a, M);for(i = 0; i < M; i++){ prin...

用matlab 程序 冒泡法对10个数由小到大排序
冒泡法对10个数由小到大排序:a=rand(1,10);%随机生成一组数 a%未排序前原始数据 n=10;%数组长度 forj=1:n-1 fori=1:n-1 ifa(i)>a(i+1)c=a(i);a(i)=a(i+1);a(i+1)=c;end end end a%排序后数组显示 资料拓展 冒泡法排序原理:例如有一组数为12,23,1,4,2,6。

用冒泡法对数组的N个整数排序,按由小到大的顺序输出。
include<stdio.h> include<math.h> int main(){ int i,j,a[100],n,t;scanf("%d",&n);for(i = 0;i < n;i ++) scanf("%d",&a[i]);for(i = 0;i < n;i ++)for(j = 0;j < n;j ++)if(a[i] < a[j])t = a[i],a[i] = a[j],a[j] = t;for(i = 0...

安龙县19262257044: C语言 用冒泡法对20个整数进行排序(升序). -
钦缪艾畅: #includevoid main() { int i, n=30, j, m; int a[]={210,108,65,49,72,88,67,5,19,36, 90,35,1,112,215,6,23,46,51,29, 77,19,0,55,27,48,18,22,30,56}; printf("\nthese integers are as below:\n\n"); for (i=0; ia[j+1]) { m=a[j]; a[j]=a[j+1]; a[j+1]=m; } } } printf("\nthe sorted integers:\n\n"); for (i=0; i

安龙县19262257044: C语言编程高手请进!用冒泡法对20个数进行排序 -
钦缪艾畅: 冒泡? 首先你要将你排序的二十个数放到数组 int Num[](以整型为例.如果有小数: double Num[]) 里面.然后定义排序的函数: Sort(int Num[],int n); 第一个参数是你要排序的数组,第二个就是数组里面数的个数.函数实现: Sort(int Num[],...

安龙县19262257044: 用“冒泡法对20个整数进行排顺(用C语言编译) -
钦缪艾畅: #include <stdio.h> void main() { int a[20]; int temp; for(int i=0;i<20;i++) { printf("请输入第%d个整数",i+1); scanf("%d",&a[i]); } for(i=0;i<19;i++) { for(int j=0;j<19-i;j++){ if(a[j]<a[j+1]) { temp=a[j+1]; a[j+1]=a[j]; a[j]=temp; } } } printf("\n排序后为:\n"); for(i=0;i<20;i++){ printf("%d",a[i]); } printf("\n") }

安龙县19262257044: 用冒泡法对任意给定的20个整数进行降序排序,并统计交换的次数 -
钦缪艾畅: ……不可能更“通俗了” 冒泡排序本来就是极其通俗的算法了 我觉得,只要您知道什么是冒泡排序,就能看得懂这段程序了 或者您说说,我哪里写得比较晦涩了?#include <stdio.h> const int n=20; int a[20]; int count;void swap(int *a,int *b) { ...

安龙县19262257044: 用冒泡法对随机产生的20个不同的2位正整数排序,并将随机整数由从小到大的排序结果显示在窗体.用通用过程 -
钦缪艾畅: 假设20个数据在EXCEL工作表的A列,在A1:A20.下面VBA代码就可以实现 Sub px() For i = 1 To 20 For j = i To 20 If Cells(i, 1) < Cells(j, 1) Then s = Cells(i, 1): Cells(i, 1) = Cells(j, 1): Cells(j, 1) = s End If Next Next End Sub

安龙县19262257044: 用冒泡法将20个整数按升序排列 -
钦缪艾畅: #include "stdio.h" main() { int i,j,temp,a[20];printf("Please input 20 integers:\n"); for(i=0;i<=19;i++) scanf("%d",&a[i]); //&这个呢、、for(i=0;i<=19;i++) for(j=0;j<=19-i;j++) if(a[j]>a[j+1]) { temp=a[j]; a[j]=a[j+1]; a[j+1]=temp; }for(i=0;i<=19;i++) printf("%d\n",a[i]); }

安龙县19262257044: 用冒泡排序法对输入的20个数进行降序并存入数组中,输入一个数,查看是否存在
钦缪艾畅: int main(void){ int i,j,array[20],temp;printf("Input 20 integer:"); /*输入20个整数*/ for(i=0;i&lt;20;i++) scanf("%d",&amp;array[i]); printf("\n"); for(i=0;i&lt;20;i++) /*用双重循环,冒泡法排序*/ for(j=i;j&lt;20;j++) if(array[i]&lt;array[j]) {temp=array[...

安龙县19262257044: 输入20个整数,用选择法(冒泡法),对整数排列.从小到大 -
钦缪艾畅: #include<stdio.h> main() { int a[20],i,j,temp; for(i=0;i<20;i++)scanf("%d",&a[i]); for(i=0;i<20;i++) for(j=i+1;j<20;j++) if(a[i]>a[j]) { temp=a[i]; a[i]=a[j]; a[j]=temp; } for(i=0;i<20;i++) printf("%d\t",a[i]); printf("\n"); }

安龙县19262257044: 用c++编写一个冒泡排序函数模板.对20个数序进行排序输出. -
钦缪艾畅: //冒泡函数如下void BubbleSort() {int i,j;int temp;for(j=0;j<NUM-1;++j) //冒泡排序总次数为NUM-1,记得宏定义一个NUM值为20 {for(i=0;i<NUM-j;++i) //给i计数 {if(ArrInt[i]>ArrInt[i+1]) //对比临近两个元素,把值比较大的元素向下沉一个位置 ...

安龙县19262257044: 请问怎么用C语言编写一个程序用冒泡法将20个浮点型数据排序 -
钦缪艾畅: #include<stdio.h> void main(void) { float a[20]; int i,j; float temp; for(i=0;i<20;i++) { scanf("%f",&a[i]); } for(i=0;i<20;i++) { for(j=i+1;j<20;j++) { if (a[i]>a[j]) { temp=a[i]; a[i]=a[j]; a[j]=temp; }} } printf("从小到大的顺序为:\n"); for(i=0;i<20;i++) { printf("%f",a[i]); } putchar('\n'); }

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