• C语言88案例-找出数列中的最大值和最小值


    1 题目

    函数:max_min()

    功能:找出数列中的最大值和最小值

    描述:使用指针查找数列中的最大值和最小值(使用指针从而避免使用返回值)

    2 思路

    使用指针从而避免使用返回值

    在主函数中定义最大值 max 和最小值 min,将 max 和 min 的地址传递给函数处理,计算结果直接放到主函数中定义的 max 和 min 的地址中

    这样做代码执行高效并且思路清晰

    3 代码

    #include <stdio.h>
    #include <stdlib.h>
    #define N 10
    
    /**
    函数:max_min()
    功能:找出数列中的最大值和最小值
    描述:使用指针查找数列中的最大值和最小值
    **/
    
    void max_min(int *a, int *max, int *min) {
        *max = *a;        // 将数组下标为 0 的数字初始化给max
        *min = *a;        // 将数组下标为 0 的数字初始化给min
        for (int i = 0; i < N; ++i) {
            if(*max < *(a+i))        // 将大于max的值赋值给max
                *max = *(a+i);
        }
    
        for (int i = 0; i < N; ++i) {
            if(*min > *(a+i))        // 将小于min的值赋值给min
                *min = *(a+i);
        }
    }
    
    int main(int argc, char const *argv[]) {
        int i, a[N];
        int max, min;
        printf("请输入 10 个数字:
    ");
        for (int i = 0; i < N; ++i)    {
            scanf("%d", a+i);
            // scanf("%d", &a[i]);
        }
        max_min(a, &max, &min);
        printf("输入的 10 个数字为: ");
        for (int i = 0; i < N; ++i)    {
            printf("%d ", *(a+i));
        }
        printf("
    最大值为:%d
    ", max);
        printf("
    最小值为:%d
    ", min);
    }
    

    示例结果:

    $ gcc ex014.c -o demo
    $ ./demo
    请输入 10 个数字:
    3
    2
    1
    10
    9
    8
    7
    6
    5
    4
    输入的 10 个数字为: 3 2 1 10 9 8 7 6 5 4
    最大值为:10
    
    最小值为:1
    

    最后

    在这里给大家准备了几百本的互联网技术类书籍,需要的来下载吧!点击获取
    有任何问题,欢迎随时交流!!!

  • 相关阅读:
    如何提取一个转录本的3'UTR区域的序列
    如何研究某个gene的ceRNA 网络
    ceRNA 调控机制
    利用circpedia 数据库探究circRNA的可变剪切
    R语言低级绘图函数-symbols
    R语言低级绘图函数-grid
    R语言低级绘图函数-axis
    R语言低级绘图函数-title
    R语言低级绘图函数-points
    二叉树和二叉查找树之间的区别
  • 原文地址:https://www.cnblogs.com/johngo/p/14656713.html
Copyright © 2020-2023  润新知