数组元素的冒泡法和选择法排序.pptVIP

  • 3
  • 0
  • 约1.86千字
  • 约 9页
  • 2020-12-18 发布于河北
  • 举报
c语言程序设计系列微课 c语言程序设计系列 数组元素的 冒泡法和选择法排序 问题的引入 从键盘输入三个整数a,b,c,设计程序,按从大到小的顺序输出。 int a,b,c; scanf(%d%d%d,a,b,c); if(abc) printf(%d,%d,%d\n,a,b,c); 531 0 53-1 1 想法一: 出现二义性想法不正确 …… if(acb) printf(%d,%d,%d\n,a,c,b); 想法二: if(abbc) printf(%d,%d,%d\n,a,b,c); a,b,c实际排序 a,b b,a C入队 a,b,c a,c,b c,a,b b,a,c c,b,a b,c,a 考虑必须非常周密 想法有效、不宜推广 …… 想法三: printf(%d%d%d\n,a,b,c); if(ab) {t=a;a=b;b=t;} if(ca) {t=a;a=c;c=b;b=t;} else if(cb) { t=b;b=c;c=t;} 冒泡法排序 对给定n个元素,按照排序的要求,依次对相邻两个数进行比较,使大的数下沉,下的数上浮,经过n-1轮的比较、交换,直到整个数组元素满足要求为止。 用冒泡法将8个数按照从小到大排序 38 49 65 76 13 27 30 97 2 38 49 65 13 27 30 76 97 3 38 49 13 27 30 65 76 97 4 38 13 27 30 49 65 76 97 5 13 27 30 38 49 65 76 97 6 13 27 30 38 49 65 76 97 7 49 38 65 97 76 13 27 30 1 n=8 38 49 76 97 97 27 97 13 76 76 76 27 30 13 27 30 65 13 13 49 30 27 27 30 38 30 27 13 97 30 1: [ 49 38 65 97 76 13 27 30 ] j 13 49 2: 13 [38 65 97 76 49 27 30] 27 38 3: 13 27 [65 97 76 49 38 30] 4: 13 27 30 [97 76 49 38 65 ] k k k k j j j j j j j j j j k j j 谢谢! 大家好,今天我讲的主题是利用Bresenham算法画圆。目前我们使用的很多图形处理软件都提供有专门的画圆工具,通常我们的操作方法是按下鼠标左键拖动,松开即得到一个圆形,那么图形软件到底是如何实现这一功能的呢?为了弄清楚这个问题我们首先来了解一下显示器的成像原理。无论是CRT显示器还是LCD显示器,显像部分都分布有很多被称为像素的像素点,我们把一台显示器能够显示的总像素数称为其分辨率,当我们画一个圆的时候,其实就是通过程序将经过圆上的像素点置为圆的颜色,其他地方显示为背景色。 * * c语言程序设计系列微课 c语言程序设计系列 大家好,今天我讲的主题是利用Bresenham算法画圆。目前我们使用的很多图形处理软件都提供有专门的画圆工具,通常我们的操作方法是按下鼠标左键拖动,松开即得到一个圆形,那么图形软件到底是如何实现这一功能的呢?为了弄清楚这个问题我们首先来了解一下显示器的成像原理。无论是CRT显示器还是LCD显示器,显像部分都分布有很多被称为像素的像素点,我们把一台显示器能够显示的总像素数称为其分辨率,当我们画一个圆的时候,其实就是通过程序将经过圆上的像素点置为圆的颜色,其他地方显示为背景色。 * *

文档评论(0)

1亿VIP精品文档

相关文档