冒泡排序 and 选择排序 变量打印斐波拉契数列 and 数组打印斐波拉契数列

1 排序

1.1 冒泡排序

 1 #include <stdio.h>
 2 int main()
 3 {
 4     int i,j,tmp,a[6];
 5     printf("input six int numbers:\n");
 6     for(i=0;i<6;i++)
 7     {
 8         scanf("%d",&a[i]);
 9     }
10     for(j=1;j<6;j++)//比较的趟数(6个数比较5趟)
11         for(i=0;i<6-j;i++)//每趟两两比较的次数
12             if(a[i]>a[i+1])
13             {
14                 tmp=a[i];
15                 a[i]=a[i+1];
16                 a[i+1]=tmp;
17             }
18     printf("the number is:\n");
19     for(i=0;i<6;i++)
20         printf("%3d",a[i]);
21     printf("\n");
22             return 0;
23 }

1.2 选择排序

执行每一趟都找出最小的数,将其放在首位

 1 #include <stdio.h>
 2 int main()
 3 {
 4     int i,j,tmp,a[3];
 5     printf("请输入3个数:\n");
 6     for(i=0;i<3;i++)
 7         scanf("%d",&a[i]);
 8     for(i=0;i<2;i++)
 9         for(j=i+1;j<3;j++)
10             if(a[i]>a[j])
11             {
12                 tmp=a[i];
13                 a[i]=a[j];
14                 a[j]=tmp;
15             }
16             printf("排序后的顺序:\n");
17             for(i=0;i<3;i++)
18                 printf("%5d",a[i]);
19             printf("\n");
20             return 0;
21 }

2 斐波拉契数列

2.1 变量打印

 1 int f1=1,f2=1,f3;
 2     int i;
 3     printf("%12d\n%12d\n",f1,f2);
 4     for(i=1;i<=18;i++)
 5     {
 6         f3=f1+f2;
 7         printf("%12d\n",f3);
 8         f1=f2;
 9         f2=f3;
10     }

2.2 数组打印

 1 int i;
 2     int a[20]={1,1};
 3     for(i=2;i<20;i++)
 4         a[i]=a[i-2]+a[i-1];
 5     for(i=0;i<20;i++)
 6     {
 7         if(i%5==0) printf("\n");
 8         printf("%12d",a[i]);
 9     }
10     printf("\n");

3 VC代码

步骤:工作空间→ 项目(Win32 console Application)→文件
新建项目时,Win32  Application与Win32 console Application的区别
① 程序不同:Win32  Application是标准windows程序,完全拥有windows特性,可以通过鼠标点击窗口来完成控制
②入口函数不同:Win32  Application入口函数是WinMain(),它具有消息响应机制,可以运行图形化的C++程序。Win32 console Application入口函数是main()函数,可以访问部分windows API函数,如果你编写传统的C程序,必须建立Win32 Console程序。

原文地址:https://www.cnblogs.com/1532387167llx/p/10984080.html

时间: 2024-10-09 19:01:21

冒泡排序 and 选择排序 变量打印斐波拉契数列 and 数组打印斐波拉契数列的相关文章

java面向对象的冒泡排序,选择排序和插入排序的比较

这三种排序有俩个过程: 1.比较俩个数据. 2.交换俩个数据或复制其中一项. 这三种排序的时间级别 冒泡排序:比较 (N-1)+(N-2)+...+2+1 = N*(N-1)/2=N2/2 交换  0——N2/2 = N2/4 总时间 3/4*N2 选择排序:比较 (N-1)+(N-2)+...+2+1 = N*(N-1)/2=N2/2 交换  0——3*(N-1)=3*(N-1)/2=3/2*N 总时间 N2/2+3/2*N 插入排序:第一轮最多比较一次,第二轮最多比较俩次,最后一轮比较N-1

Java排序算法分析与实现:快排、冒泡排序、选择排序、插入排序、归并排序(二)

一.概述: 上篇博客介绍了常见简单算法:冒泡排序.选择排序和插入排序.本文介绍高级排序算法:快速排序和归并排序.在开始介绍算法之前,首先介绍高级算法所需要的基础知识:划分.递归,并顺带介绍二分查找算法. 二.划分: 划分是快速排序的前提,即把数据分为两组,大于特定值的数据在一组,小于特定值的数据在另一组.快速排序即是由划分和递归操作来完成的. (1)原理: 定义一个阈值,分别从最左面和最右面向中间遍历元素,左面找到一个大于阈值的数据便停止,右边找到一个小于阈值的数据便停止,如果此时左右两边都还没

java基础(16)、数组的高级应用--冒泡排序、选择排序

数组排序 目录 一. 冒泡排序 二. 选择排序 三. 优化选择排序 一. 冒泡排序 将数组元素按[从小到大排序]为例 思路:依次对临近的两个元素对比,将最大值放在数组最后:再将剩余的元素对比,大值放在剩余元素的最后. . . 以此循环,最后元素就是按从小到大排列. 1.1. 做之前,先了解这个操作:把数组的最大值放在末尾 将元素1和元素2对比,如果元素1的值大,则元素2和元素1的值互换(此时元素2为大值):再让元素2和元素3对比.  . ( 保留大值).  .  元素3和元素4对比 .  . 

ObjC语法练习 冒泡排序、选择排序、矩阵相乘

用OC实现的冒泡排序.选择排序.矩阵相乘,纯粹是用来练习语法. 冒泡排序,程序如下: void bubbleSort() { //初始化数组 NSMutableArray *array1 = [[NSMutableArray alloc] initWithCapacity:8]; [array1 addObject:@"5"]; [array1 addObject:@"10"]; [array1 addObject:@"8"]; [array1

#排序算法#【1】概述、冒泡排序、选择排序

排序算法分类: 内部排序(在排序过程中不需要访问外存就可以完成排序) 外部排序 内部排序分类: 交换排序 冒泡排序 快速排序 选择排序 直接选择排序 堆排序 插入排序 直接插入排序 希尔排序 合并排序 外部排序: 常见的是多路归并算法,即将原文件分为多个能够一次装入内存一部分,分别把每一部分调入内存完成排序,然后对已经排序的子文件进行归并排序 冒泡排序法: 冒泡排序法是一种相邻数据交换的排序方法. 冒泡排序法的基本思想是:对待排序记录关键字从后往前(逆序)进行多遍扫描,当发现相邻两个关键字的次序

JavaScript算法(冒泡排序、选择排序与插入排序)

冒泡排序.选择排序与插入排序复杂度都是指数级别的,放在一起说吧. 介绍一些学习这三个排序方法的比较好的资料.冒泡排序看<学习JavaScript数据结构与算法>介绍的冒泡排序,选择排序看<计算机科学概论(第三版)>里介绍的选择排序,插入排序看<计算机科学概论(第11版)>里介绍的插入排序, 通过这三份资料弄明白实现原理之后,最后看<学习JavaScript数据结构与算法>一书里的JS实现代码. 嗯,这本书里都有现成代码,就不在这儿写了,关键是弄清楚原理,然后

插入排序、冒泡排序、选择排序、希尔排序、快速排序、归并排序、堆排序和LST基数排序——C++实现

首先是算法实现文件Sort.h,代码如下: /* * 实现了八个常用的排序算法:插入排序.冒泡排序.选择排序.希尔排序 * 以及快速排序.归并排序.堆排序和LST基数排序 * @author gkh178 */ #include <iostream> template<class T> void swap_value(T &a, T &b) { T temp = a; a = b; b = temp; } //插入排序:时间复杂度o(n^2) template<

黑马程序员——冒泡排序和选择排序——熟悉又陌生的排序方法

------Java培训.Android培训.iOS培训..Net培训.期待与您交流! ------- 昨天做基础测试题,遇到了个排序问题,写完后脑子里突然跳出了“冒泡排序法”这个名词.“冒泡排序法”和“选择排序法”是每个程序初学者都会学到的两个排序方法,但是好多人对这两个排序方法是既熟悉又陌生,熟悉是因为凡是遇到排序一般都会想到这两个方法,陌生是因为细细一想对这两个方法的原理和区别又不是很清楚.不较真还好,初学者一较真就很容易被这两个方法搞晕了,我当时也被这两个方法搞晕了,就又认认真真一步一步

冒泡排序、选择排序

下面是两种最基本的排序:冒泡排序.选择排序.复杂度均为O(n^2). 冒泡排序: bool BubbleSort(int arr[],int len) { if(arr == NULL || len <= 0) { return false; } int i,j,temp; int flag = 1; for(i = 0; i < len -1 && flag; i++)//注意:i < len-1 而不是len { flag = 0;//flag标志可以提前结束循环 f