斐波那锲数列与冒泡排序法在C语言中的用法

简介: 首先简单介绍一下什么是斐波那契数列

一、斐波那锲数列

首先简单介绍一下什么是斐波那契数列


acc7e80842f641478e9ab4bfc932fa50.png

C语言实现逻辑详见下面代码

#include <stdio.h>
int main()
{
    int arr[30] = {0};
    int i;
    int arraysize;
    arr[0] = 0;
    arr[1] = 1;
    arraysize = sizeof(arr)/sizeof(arr[0]);//求出数组有多少个数据,其实就是30个
    for(i=2;i<arraysize;i++)
    {
        arr[i] = arr[i-1]+arr[i-2];   
    }
    for(i=0;i<arraysize;i++)
    {
          printf("%d\n",arr[i]);     
    }
    return 0;
}

输出打印的内容如下

0
1
1
2
3
5
8
13
21
34
55
89
144
233
377
610
987
1597
2584
4181
6765
10946
17711
28657
46368
75025
121393
196418
317811
514229

二、冒泡排序

以下为由大到小尽心冒泡排序

#include <stdio.h>
int main()
{
    int array[] = {1,3,4,5,2};
    int i;
    int j;
    int tmp;
    int len = sizeof(array)/sizeof(array[0]);//计算出数组中有多少个数据,这里是5,这样做的目的是,待排序的数据可以实时更改
    for(i=0;i<len-1;i++)//两个for循环的目的是把最大的数挑出来,以此往小了进行比较
    {
        for(j=0;j<len-1-i;j++)
        {
            if(array[j] < array[j+1])//由小到大就把小于号改为大于号
            {
                tmp = array[j];
                array[j] = array[j+1];
                array[j+1] = tmp;
            }
        }
    }
    for(i=0;i<len;i++)
    {
        printf("%d\n",array[i]);//打印输出
    }
    return 0;
}

输出结果

5
4
3
2
1
相关文章
|
22天前
|
IDE 编译器 开发工具
【C语言】全面系统讲解 `#pragma` 指令:从基本用法到高级应用
在本文中,我们系统地讲解了常见的 `#pragma` 指令,包括其基本用法、编译器支持情况、示例代码以及与传统方法的对比。`#pragma` 指令是一个强大的工具,可以帮助开发者精细控制编译器的行为,优化代码性能,避免错误,并确保跨平台兼容性。然而,使用这些指令时需要特别注意编译器的支持情况,因为并非所有的 `#pragma` 指令都能在所有编译器中得到支持。
93 41
【C语言】全面系统讲解 `#pragma` 指令:从基本用法到高级应用
|
3月前
|
C语言
C语言判断逻辑的高阶用法
在C语言中,高级的判断逻辑技巧能显著提升代码的可读性、灵活性和效率。本文介绍了六种常见方法:1) 函数指针,如回调机制;2) 逻辑运算符组合,实现复杂条件判断;3) 宏定义简化逻辑;4) 结构体与联合体组织复杂数据;5) 递归与分治法处理树形结构;6) 状态机管理状态转换。通过这些方法,可以更高效地管理和实现复杂的逻辑判断,使代码更加清晰易懂。
244 88
|
2月前
|
算法 搜索推荐 C语言
【C语言】冒泡排序+优化版
【C语言】冒泡排序+优化版
|
2月前
|
C语言
【c语言】qsort函数及泛型冒泡排序的模拟实现
本文介绍了C语言中的`qsort`函数及其背后的回调函数概念。`qsort`函数用于对任意类型的数据进行排序,其核心在于通过函数指针调用用户自定义的比较函数。文章还详细讲解了如何实现一个泛型冒泡排序,包括比较函数、交换函数和排序函数的编写,并展示了完整的代码示例。最后,通过实际运行验证了排序的正确性,展示了泛型编程的优势。
36 0
|
4月前
|
存储 缓存 编译器
【C语言篇】scanf和printf万字超详细介绍(基本加拓展用法)(下篇)
scanf处理⽤⼾输⼊的原理是,⽤⼾的输⼊先放⼊缓存,等到按下回⻋键后,按照占位符对缓存进⾏解读。 解读⽤⼾输⼊时,会从上⼀次解读遗留的第⼀个字符开始,直到读完缓存,或者遇到第⼀个不符合条件的字符为⽌。
194 2
|
4月前
|
存储 C语言
【C语言篇】scanf和printf万字超详细介绍(基本加拓展用法)(上篇)
printf 的作⽤是将参数⽂本输出到屏幕。它名字⾥⾯的 f 代表 format (格式化),表⽰可以定制输出⽂本的格式。
94 1
|
5月前
|
搜索推荐 C语言
C语言冒泡排序(附源码和动态图)
冒泡排序是一种简单的排序算法,其基本思想是通过重复遍历待排序的数列,比较每对相邻元素的值,如果它们的顺序错误(即满足一定的排序条件,如从小到大排序时前一个元素大于后一个元素),就交换它们的位置。这个过程就像水底的气泡一样逐渐向上冒,因此得名“冒泡排序”。
|
6月前
|
存储 C语言
c语言scanf函数用法
c语言scanf函数用法
|
6月前
|
存储 C语言
C语言学习记录——联合体(共用体、特点、用法、联合体大小计算)
C语言学习记录——联合体(共用体、特点、用法、联合体大小计算)
116 2
|
5月前
|
存储 C语言
C语言中static关键字的作用与用法解析
C语言中static关键字的作用与用法解析