写一个函数,用“起泡法”对输入的10个字符按由小到大顺序排列(C语言)

题目要求:如标题,起泡法是一种重要的、基本的的排序算法

思路:

  1. 每次将相邻两个数比较,将较小的调到前面
  2. 若有6个数:9,8,5,4,2,0。第一次先将最前面的两个数8和9对调,见图1;第2次将第2和第3个数(9和5)对调…如此共进行5次,得到8-5-4-2-0-9。可以看到,最大的数9已经“沉底”成为最下面的一个数,而小的数“上升”,最小的数0已向上“浮起”一个位置。经过第1趟(共5次比较和交换)后,得到最大的数9
  3. 然后进行第2趟比较,对余下的前面5个数(8,5,4,2,0)进行新一轮比较,使得第二大的数“沉底”,见图2。经过第2趟(共4次比较和交换)后,得到第二大的数8
  4. 按此规律,对6个数要进行5趟比较。第1趟共比较5次,第2趟共比较4次,第5趟只须比较1次
  5. 此时,如果有n个数,则要进行n-1趟比较。第一趟共比较n-1次,第j趟共比较n-j次,第n-1趟只须比较1次
  6. 这个过程如同气泡一样,每经过一趟,最小的数“上升”一位。最后升到第一个数

以下是具体代码:

#include <stdio.h>
#include <string.h>
int main()
{void bubble(char str[]);char string[10];printf("please enter a string: ");gets(string);bubble(string);return 0;
}void bubble(char str[])
{int i,j;char temp;for(i=0;i<=8;i++)for(j=0;j<=8-i;j++){if(str[j]>str[j+1]){temp=str[j];str[j]=str[j+1];str[j+1]=temp;}}printf("The sorted strings: ");puts(str);
}

写一个函数,用“起泡法”对输入的10个字符按由小到大顺序排列相关推荐

  1. 写一个函数,用“起泡法”对输入的10个字符按由小到大顺序排列。

    代码: #include <stdio.h> #include <string.h> #define N 10 int main(){void sort(char str[]) ...

  2. (19)写一个函数,用”起泡法“对输入的10数字符按由小到大顺序排列

    用"起泡法"对输入的10数字符按由小到大顺序排列 起泡法:即每一次将相邻两个数进行比较,若符合条件则交换两个数的值.每进行一趟排序,最大的一个数变成最后一个数.以此类推,直至整个数 ...

  3. 写一个函数,用“冒泡法”对输入的10个字符按由小到大顺序排列

    冒泡算法实现 写一个函数,用"冒泡法"对输入的10个字符按由小到大顺序排列 十个字符为1a 3 x v 6 w 8 9 z #include<stdio.h> char ...

  4. 写一个函数,用冒泡法对输入的10个字符按由小到大顺序排列。

    def BubbleSort(arr):num = 0# arr = [10,9,8,7,6,5,4,3,2,1]for i in range(len(arr)):for j in range(len ...

  5. C语言>>写一函数,用“起泡法”对输入的10个字符由小到大排序。

    使用工具: Dev-C++ 5.11 解题思路: "起泡法"思路为:将相邻两个数比较,将较小的调到前头,较大的放到后头.经过1轮比较后,最大的数便调到最后一个位置.所以n个数要比较 ...

  6. ACMNO.24 C语言-转置矩阵 写一个函数,使给定的一个二维数组(3×3)转置,即行列互换。 输入 一个3x3的矩阵 输出 转置后的矩阵 样例

    题目描述 写一个函数,使给定的一个二维数组(3×3)转置,即行列互换. 输入 一个3x3的矩阵 输出 转置后的矩阵 样例输入 1 2 3 4 5 6 7 8 9 样例输出 1 4 7 2 5 8 3 ...

  7. 写一个函数,输入int型,返回整数逆序后的字符串

    2019独角兽企业重金招聘Python工程师标准>>> 刚刚看到一个面试题:写一个函数,输入int型,返回整数逆序后的字符串.如:输入123,返回"321". 要 ...

  8. C语言输入数字出现相应答案,写一个函数 输入一个十六进制数,输出相应的十进制数。...

    C语言写一个函数,输入一个十六进制数,输出相应的十进制数. [c源程序] #include #define MAX 1000 int main() { int htoi(char s[]); int ...

  9. 写一个函数,用户输入一个数判断是否是素数,并返弹出回值(又叫质数,只能被1和自身整数的数)

    // 写一个函数,用户输入一个数判断是否是素数,并返弹出回值(又叫质数,只能被1和自身整数的数)function isPrime(num) {for (var i = 2; i < num; i ...

最新文章

  1. 用python画烟花-python实现烟花小程序
  2. cookies默认过期时间_「图」Chrome Canary新版已启动“增强版cookies控制”预览测试...
  3. vagrant box各种命令汇总
  4. php 语义解析,[扩展推荐] PHP 语义化版本(SemVer)辅助库
  5. 小白必看!JS中循环语句大集合
  6. Maven下载JasperReports报错Could not find artifact com.lowagie:itext:pom:2.1.7.js6 in alimaven
  7. 【独行秀才】macOS Monterey 12.1Beta4(21C5045a)原版镜像
  8. 什么是Batch,什么是Epoch?在训练模型的时候经常看到的参数,自己的见解。
  9. 安卓手机远程连接linux系统,电脑(Linux/Windows)使用SSH远程登录安卓(Android)手机实现无线传输和管理文件(图文详解)-Go语言中文社区...
  10. Fault tolerant heap shim applied to current process. This is usually due to previous crashes
  11. github官网进不去解决方案
  12. 旧照片或胶片着色修复+GAN
  13. 【JZOJ5234】外星人的路径
  14. sqlmap之sql注入(一)
  15. Z 字形变换(C语言)
  16. 如人饮水,冷暖自知。
  17. docker images 命令详解
  18. 《程序员的修炼之道——从小工到专家》读书笔记
  19. flutter 阿里 号码认证_我对Flutter的第一次失望
  20. composer php 扩展,Composer 增加自己Laravel的扩展

热门文章

  1. 查找子串-字符串查找的简单函数
  2. php怎么设置文字环绕图片,css文字环绕图片的方法
  3. R5 5600G ubuntu18.04 核显驱动(其他显卡驱动问题也可参考)
  4. i9300刷recovery 手机天堂-软件世界 | 手机天堂-软件世界
  5. Java集成企业微信中的微信客服[接收消息和事件]
  6. java生成假数据--javafaker
  7. PS快速画横线竖线斜线
  8. 计算机图形学04:中点Bresenham算法画椭圆
  9. php图片验证码类,php图片验证码类
  10. Pixhawk组装中的一些BUG