C语⾔冒泡排序法的实现(升序排序法)
任务代码:
数字的排序:
1
2
3
#include
4
5
#define SIZE 10
6
intmain()
7
{
8
inta[SIZE]={12 ,43,9,13,67,98,101,89,3,35};//⼗个数的⽆序数列
9
inti,j,t;
printf("此程序使⽤冒泡排序法排列⽆序数列!n");
10
//冒泡排《大学》原文 序
11
标本是什么意思 for(i=0;i<10-1;i++)//n个数的数列总共扫描n-1次
12
{
13
for(j=0;j<10-i-1;j++)//每⼀趟扫描到a[n-i-2]与a[n-i-1]⽐较为⽌结束
14
{
if(a[j]>a[j+1])继承英文 //后⼀位数⽐前⼀位数⼩的话,就交换两个数的位置(升序)
15
{
16
t=a[j+1];
17
a[j+1]=a[j];
18
a[j]=t;
}
19
}
20
}
21
22
printf("排列好的数列是:n");
23
//输出排列好得吃数列
for(i=0;i<10;i++)
24
{
25
26
printf("%d ",a[i]);
27
}
28
return0;
29
}
30
31
字符排序:
1
2
3
#include
4
5
#define SIZE 10
6
intmain()
7
{
8
chara[SIZE]={'i','l','o','v','e','y','o','u','y','x'};//⼗个数的⽆序数列
9
inti,j;
10
chart;
11
printf("此程序使⽤冒泡排序法排列⽆序数列!n");
12
//冒泡排序
for(i=0;i<10-1;i++)//n个数的数列总共扫描n-1次
13
{
14
for(j=0;j<10-i-1;j++)//每⼀趟扫描到a[n-i-2]与a[电商运营岗位职责 n-i-1]⽐较为⽌结束
15
{
16
if(a[j]>a[j+1])//后⼀位数⽐前⼀位数⼩的话,就交换两个数的位置(升序)
17
{
t=a[j+1];
18
a[j+1]=a[j];
19
a[j]=t;
}
20
}
21
}
22
23
printf("排列好的字符组是:n");
24
//输出排列好得吃数列
for(i=0;i<10;i++)
25
{
26
27
printf("%c ",a[i]);
28
}
29
return0;
30
}
31
32
⽤函数来解决这个问题:
1
2
3
#include
4
5
6
voidfunction(chara[],int);//尤其注意,此处的函数声明必须是char a[],因为这⾥穿的是地址,不能仅仅使⽤char
7
8
intmain()
9
{
10
inti;
11
chara[10]={'i','l','o','v','e','y','o','u','y','x'};//⼗个数的⽆序字符数列
12
printf("此程序使⽤冒泡排序法排列⽆序数列!n");
13
function(a,10);//调⽤冒泡排序
14
printf("排列好的字符组是:n");
//输出排列好得吃数列
15
for(i=0;i<10;i++)
16
{
17
18
printf("%c ",a[i]);
19
}
20
return0;
}
21
22
voidfunction(chara[],intm)
23
{
24
//冒泡排序
25
inti,j;
26
chart;
27
for(i=0;i 28 { for(j=0;j 29 { 30 if(a[j]>a[j+1])//后⼀位数⽐前⼀位数⼩的话,就交换两个数的位置(菜鸟英语
升序) 31 { 32 t=a[j+1]; a[j+1]=a[j]; 33 a[j]=t; 34 } 35 } 36 } 37 return; } 38 39 40 执⾏情况: 知识总结: 冒泡排序法:也叫升序排序法,但是相⽐起⼆分法查找只能应⽤于有序数列,⼆如何将⼀个⽆序数列变的有序就可以使⽤冒泡 排序法 对上⾯的过程进⾏总结: 该思想体现在成续上的解法是: 实例: 冒泡排序不仅仅可以应⽤于数字同样可以应⽤于字符字母的快速排序: 以上就是本⽂的全部内容,希望对⼤家的学习有所帮助,也希望⼤家多多⽀持。
本文发布于:2023-04-28 12:11:15,感谢您对本站的认可!
本文链接:https://www.wtabcd.cn/fanwen/fan/82/519388.html
版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系,我们将在24小时内删除。
留言与评论(共有 0 条评论) |