zoukankan      html  css  js  c++  java
  • 数组作为函数的参数的基本知识要点

    1.数组元素作函数实参:

      由于实参可以是表达式,数组元素可以是表达式的组成部分,因此数组元素当然可以作为函数的实参,与用变量作实参一样,是单向传递,即“值传送”方式。

    2.数组名可以做函数参数:

      a.用数组名做函数参数,应该在主调函数和被调用函数分别定义数组,例中:array是形参数组名,score是实参数组名,分别在其所在函数中定义,不能只在一方定义。

      b.实参数组与形参数组类型应一致,如不一致,结果将出错。

      c.在被调用函数中声明了形参数组的大小为10,但在实际上,指定其大小是不起任何作用的,因为C编译对形参数组大小不做检查,只是将是参数组的首地址传给形参数组,因此score[n]和array[n]指的是同一单元。

      d.形参数组也可以不指定大小,在定义数组时在数组名后面跟一个空的方括弧,有时为了在被调用函数中处理数组元素的需要,可以另设一个参数,传递需要处理的数组元素的个数。

      e.用数组名作函数实参时,不是把数组元素的值传递给形参,而是把实参数组的起始地址传递给形参数组,这样两个数组就共占同一段内存单元。

    float average(float array[10])
    {
        int i;
        float aver,sum=array[0];
        for(i=1;i<10;i++)
             sum=sum+array[i];
        aver=sum/10;
        return(aver);
    }
    main()
    {
        float score[10],aver;
        int i;
        printf("input 10 scores:\n");
        for(i=0;i<10;i++)
            scanf("%f\n",&score[i]);
        printf("\n");
        aver=average(score);
        printf("average score is %5.2f\n",aver);
    }

    3.用多维数组名作函数的参数:

      多维数组元素可以作为实参,可以用多维数组名作为实参和形参,在被调用函数中对形参数组定义时可以指定每一维的大小,也可以省略第一维的大小说明。如:int array[3][10];或int array[][10];

    吾屋无污,吴捂屋污,诬吾污屋,吾晤吴污,吾无物污,吴侮污吾,吾忤吴屋,悟吴诬吾,污屋吴污,吴侮吾污,吾勿武侮,吾唔吴误,诬侮污吾,吾屋悟忤.
  • 相关阅读:
    django监测登录成功事件
    大兔子生小兔子问题
    XML 命名空间(XML Namespaces)介绍以及节点读取方法
    喝汽水问题
    一个女程序员的男友需求说明书(转)
    ASP.NET学习(二)
    字典序排序
    如果说中国的程序员技术偏低,原因可能在这里(转)
    BI(摘)
    肝脏、心脏、脾脏、肺脏、肾脏的毒素表现以及食疗排毒
  • 原文地址:https://www.cnblogs.com/chenxiangxi/p/2185251.html
Copyright © 2011-2022 走看看