zoukankan      html  css  js  c++  java
  • 编程基础C——数组作为函数参数的应用

    当数组作为函数的形参时,数组的长度可以省略。
    • 调用该函数时,需要传数组的地址,也就是说可以直接传数组名,也可以是首元素的地址。
     
    • 当函数的形参是变量(不是地址),其传值是单向的,也就是说,形参值的改变不会影响实参。
     
    • 当函数的形参是数组(是地址),其传值是双向的,也就是说,形参值的改变会影响实参。
     
    双向传递例子:
    #include <stdio.h>
    void fun(int a[])
    {
        a[0]=10;
    }

    int main(int argc, const char * argv[])
    {
        int b[3]={1,2,3};
       fun(b);
        printf(“a[0]= %d b[0]= %d“,a[0],b[0]);
        return 0;
    }
    运行结果:a[0]=10   b[0]=10
     
    例:
    //用函数调用实现冒泡排序;
    #include <stdio.h>
    void fun(int a[])
    {
        for (int i=0;i<9;i++)
            for(int j=0;j<9-i;j++)
                if(a[j]>a[j+1])
                {int t;t=a[j];a[j]=a[j+1];a[j+1]=t;}
        printf("排序之后:");
        for(int i=0;i<10;i++)
            printf("%d ",a[i]);
    }
    int main(int argc, const char * argv[])
    {
        int b[10];
        printf("请输入10个数:");
        for(int i=0;i<10;i++)
        {
            scanf("%d",&b[i]);
        }

        fun(&b[0]);
        return 0;
    }
    感谢您的访问! 若对您有帮助或有兴趣请关注博客:http://www.cnblogs.com/Rong-Shengcom/
  • 相关阅读:
    排序算法比较
    直接选择排序
    静态查找表和动态查找表
    memset函数
    二叉树
    使用vue+Element的Upload+formData实现图片传到SpringBoot,再上传到fastdfs
    vue中的export与export default的区别
    人人开源
    SpringBoot注解
    大厂薪资
  • 原文地址:https://www.cnblogs.com/Rong-Shengcom/p/4931381.html
Copyright © 2011-2022 走看看