精华内容
下载资源
问答
  • 若用数组名作为函数调用时的实参,则实际上传递给形参的是数组首地址。数组首地址数组第一个元素的地址。数组名字本身就是一个指针,它是一个指针常量,指向的地址不变。比如定义了一个数组变量,编译器就会在内存中...

    若用数组名作为函数调用时的实参,则实际上传递给形参的是数组首地址。

    数组首地址数组第一个元素的地址。数组名字本身就是一个指针,它是一个指针常量,指向的地址不变。

    比如定义了一个数组变量,编译器就会在内存中划分了一块地址空间给它,数组名这个指针常量就指向了这块内存空间的首地址,而数组首元素就存在这段内存空间的首地址处,即这段内存空间的首地址跟数组首元素的内存地址是一样的。

    09f5610d0b416e60d98ebc2d36514bb0.png

    扩展资料:

    形参的作用是实现主调函数与被调函数之间的联系,通常将函数所处理的数据,影响函数功能的因素或者函数处理的结果作为形参。

    没有形参的函数在形参表的位置应该写void.main 函数也可以有形参和返回值,其形参也称为命令行参数,由操作系统在启动程序时初始化,其返回值传递给操作系统。

    两者关系:

    在一般传值调用的机制中只能把实参传送给形参,而不能把形参的值反向地传送给实参。因此在函数调用过程中,形参值发生改变,而实参中的值不会变化。而在引用调用的机制当中是将实参引用的地址传递给了形参,所以任何发生在形参上的改变实际上也发生在实参变量上。

    展开全文
  • 数组名做形参,只需要数组名就好了; void GetData(int a[],int k); void Sort(int a[],int k); 数组名做实参,需要整个数组,但是不需要指定数组的大小 GetData(a,k); Sort(a,k); 题目: 定义函数GetData()用于...

    数组名做形参时,只需要数组名就好了;
    void GetData(int a[],int k);
    void Sort(int a[],int k);

    数组名做实参时,需要整个数组,但是不需要指定数组的大小
    GetData(a,k);
    Sort(a,k);

    题目:
    定义函数GetData()用于接收键盘输入的一组整形数据,并放入一维数组中;
    另外再定义一个函数Sort()用于对输入的这组数据按照降序排列。
    主函数先后调用GetData和Sort函数,输出最后的排序结果

    C代码:

    #include<stdio.h>
    #define N 80
    void GetData(int a[],int k);
    void Sort(int a[],int k);
    void main()
    {
      int k,a[N]={0};
      printf("请输入数的个数:");
      scanf("%d",&k);  
      GetData(a,k);
      Sort(a,k);
    }
    void GetData(int a[],int k)
    {
      int i,j;
      printf("请输入%d个数:",k);
      for(i=0;i<k;i++)
      {
        scanf("%d",&j);
        a[i]=j;
      }
    }
    void Sort(int a[],int k)
    {
       int i,j,m,t;
       for(i=0;i<k-1;i++)
       {
         t=i;
         for(j=i+1;j<k;j++)
         if(a[j]>a[t])
         t=j;
         if(t!=i)
         {
           m=a[t];
           a[t]=a[i];
           a[i]=m;
         }
       }
       printf("排列后的数为:");
       for(i=0;i<k;i++)
       printf("%-4d",a[i]);
    }
    

    在这里插入图片描述

    心得:我以前都是理解一些概念,现在才深刻体会 ,动手操作真的是一个很好的方式!!!

    展开全文
  • 数组作为函数参数函数调用

    万次阅读 2018-11-28 15:04:44
    实参可以是常量变量或者表达式,数组元素就相当于变量,因此数组元素可以用作函数实参,但是不能用作函数形参(因为在函数调用时临时分配存储单元,不可能为一个数组单独分配存储单元数)数组名可以做实参和形参,...

    调用有参函数时需要提供实参,实参可以是常量,变量或者表达式,数组元素就相当于变量,因此数组元素可以用作函数实参,但是不能用作函数形参(因为在函数被调用时临时分配存储单元,不可能为一个数组单独分配存储单元数)数组名可以做实参和形参,但此时传递的是数组第一个元素的地址;

    用一个一维数组内放N个学生的成绩,求平均成绩;
    #include<stdio.h>
    #define N 10
    int main()
    {
    float average(float array[N]); //函数的声明
    float score[10],aver;
    int i;
    printf(“enter 10 scores:\n”);
    for(i=0;i<N;i++)
    scanf("%f",&score[i]);
    printf("\n");
    aver=average(score); //调用average函数
    printf(“average score is %5.2f\n”,aver);
    return 0;
    }

    float average(float array[N]) //定义average函数
    {
    int i;
    float aver,sum=array[0];
    for(i=1;i<N;i++)
    sum=sum+array[i]; //累加学生的成绩
    aver=sum/N; //求N个学生总成绩的平均值
    return(aver); //以aver作为函数的返回值
    }

    注意;
    1.用数组名做函数参数时应在主调函数和北调函数中分别定义数组,如在该程序中array是形参数组名,score是实参数组名,应分别在函数中有定义
    2.由于数组名代表的只是数组首元素的地址因此当实参向形参传递值时 ,形参数组首元素(array【0】)和实参数组首元素(score【0】)具有同一地址,共站同一存储空间,具有相同的值

    欢迎使用Markdown编辑器

    你好! 这是你第一次使用 Markdown编辑器 所展示的欢迎页。如果你想学习如何使用Markdown编辑器, 可以仔细阅读这篇文章,了解一下Markdown的基本语法知识。

    新的改变

    我们对Markdown编辑器进行了一些功能拓展与语法支持,除了标准的Markdown编辑器功能,我们增加了如下几点新功能,帮助你用它写博客:

    1. 全新的界面设计 ,将会带来全新的写作体验;
    2. 在创作中心设置你喜爱的代码高亮样式,Markdown 将代码片显示选择的高亮样式 进行展示;
    3. 增加了 图片拖拽 功能,你可以将本地的图片直接拖拽到编辑区域直接展示;
    4. 全新的 KaTeX数学公式 语法;
    5. 增加了支持甘特图的mermaid语法1 功能;
    6. 增加了 多屏幕编辑 Markdown文章功能;
    7. 增加了 焦点写作模式、预览模式、简洁写作模式、左右区域同步滚轮设置 等功能,功能按钮位于编辑区域与预览区域中间;
    8. 增加了 检查列表 功能。

    功能快捷键

    撤销:Ctrl/Command + Z
    重做:Ctrl/Command + Y
    加粗:Ctrl/Command + B
    斜体:Ctrl/Command + I
    标题:Ctrl/Command + Shift + H
    无序列表:Ctrl/Command + Shift + U
    有序列表:Ctrl/Command + Shift + O
    检查列表:Ctrl/Command + Shift + C
    插入代码:Ctrl/Command + Shift + K
    插入链接:Ctrl/Command + Shift + L
    插入图片:Ctrl/Command + Shift + G

    合理的创建标题,有助于目录的生成

    直接输入1次#,并按下space后,将生成1级标题。
    输入2次#,并按下space后,将生成2级标题。
    以此类推,我们支持6级标题。有助于使用TOC语法后生成一个完美的目录。

    如何改变文本的样式

    强调文本 强调文本

    加粗文本 加粗文本

    标记文本

    删除文本

    引用文本

    H2O is是液体。

    210 运算结果是 1024.

    插入链接与图片

    链接: link.

    图片: Alt

    带尺寸的图片: Alt

    当然,我们为了让用户更加便捷,我们增加了图片拖拽功能。

    如何插入一段漂亮的代码片

    博客设置页面,选择一款你喜欢的代码片高亮样式,下面展示同样高亮的 代码片.

    // An highlighted block
    var foo = 'bar';
    

    生成一个适合你的列表

    • 项目
      • 项目
        • 项目
    1. 项目1
    2. 项目2
    3. 项目3
    • 计划任务
    • 完成任务

    创建一个表格

    一个简单的表格是这么创建的:

    项目 Value
    电脑 $1600
    手机 $12
    导管 $1

    设定内容居中、居左、居右

    使用:---------:居中
    使用:----------居左
    使用----------:居右

    第一列 第二列 第三列
    第一列文本居中 第二列文本居右 第三列文本居左

    SmartyPants

    SmartyPants将ASCII标点字符转换为“智能”印刷标点HTML实体。例如:

    TYPE ASCII HTML
    Single backticks 'Isn't this fun?' ‘Isn’t this fun?’
    Quotes "Isn't this fun?" “Isn’t this fun?”
    Dashes -- is en-dash, --- is em-dash – is en-dash, — is em-dash

    创建一个自定义列表

    Markdown
    Text-to-HTML conversion tool
    Authors
    John
    Luke

    如何创建一个注脚

    一个具有注脚的文本。2

    注释也是必不可少的

    Markdown将文本转换为 HTML

    KaTeX数学公式

    您可以使用渲染LaTeX数学表达式 KaTeX:

    Gamma公式展示 Γ(n)=(n1)!nN\Gamma(n) = (n-1)!\quad\forall n\in\mathbb N 是通过欧拉积分

    Γ(z)=0tz1etdt&ThinSpace;. \Gamma(z) = \int_0^\infty t^{z-1}e^{-t}dt\,.

    你可以找到更多关于的信息 LaTeX 数学表达式here.

    新的甘特图功能,丰富你的文章

    Mon 06Mon 13Mon 20已完成 进行中 计划一 计划二 现有任务Adding GANTT diagram functionality to mermaid
    • 关于 甘特图 语法,参考 这儿,

    UML 图表

    可以使用UML图表进行渲染。 Mermaid. 例如下面产生的一个序列图::

    张三李四王五你好!李四, 最近怎么样?你最近怎么样,王五?我很好,谢谢!我很好,谢谢!李四想了很长时间,文字太长了不适合放在一行.打量着王五...很好... 王五, 你怎么样?张三李四王五

    这将产生一个流程图。:

    链接
    长方形
    圆角长方形
    菱形
    • 关于 Mermaid 语法,参考 这儿,

    FLowchart流程图

    我们依旧会支持flowchart的流程图:

    Created with Raphaël 2.2.0开始我的操作确认?结束yesno
    • 关于 Flowchart流程图 语法,参考 这儿.

    导出与导入

    导出

    如果你想尝试使用此编辑器, 你可以在此篇文章任意编辑。当你完成了一篇文章的写作, 在上方工具栏找到 文章导出 ,生成一个.md文件或者.html文件进行本地保存。

    导入

    如果你想加载一篇你写过的.md文件或者.html文件,在上方工具栏可以选择导入功能进行对应扩展名的文件导入,
    继续你的创作。


    1. mermaid语法说明 ↩︎

    2. 注脚的解释 ↩︎

    展开全文
  • 将一个数组作为实际参数传递给函数,只需不带方括号的数组名即可 若数组a的定义为:int a[10]; 要将数组a作为实参传递给被调用函数SumArr(), 则调用语句可写成:SumArr(a,10);

    若将一个数组作为实际参数传递给函数,只需不带方括号的数组名即可

    若数组a的定义为:int a[10];
    若要将数组a作为实参传递给被调用函数SumArr(),
    则调用语句可写成:SumArr(a,10);

    展开全文
  • 数组名为形参进行传递的函数调用的时候该如何调用? 麻烦大神解答!
  • 数组名作为函数参数

    2014-04-29 22:44:20
    数组作为函数参数时
  • 在C++中用函数调用二维数组

    千次阅读 2019-11-09 10:55:45
    用函数调用二维数组 #include #include using namespace std; void fun(int a[3][3]); int main() {  int b[3][3] = {1,1,1,2,2,2,3,3,3};  fun(b); } void fun(int a[3][3]) {  int i,j;  for ...
  • 编写一个程序,它使用下列函数: Fill_array()将一个double数组的名称和长度作为参数。它提示用户输入double值,并将这些值存储到数组中。当数组被填满或用户输入了非数字,输入将停止,并返回实际输入了多少个...
  • 当你进行函数调用的时候,add(1, 2),这里的1和2就是实参。 形参是数组 实参应该是什么? 如果形参是数组,那么实参是数组对象. 例如: void fun(int a[],int count); 参数一:表示的是int 型数组 参数二:表示传入的...
  • 1) 用数组元素作实参,只要数组类型和函数的形参变量的类型一致,那么作为下标变量的数组元素的类型也和函数形参变量的类型是一致的。因此,并不要求函数的形参也是下标变量。换句话说,对数组元素的处理是按普通...
  • 因为函数调用数组,数组定义在主程序里,通过参数传入,所以这个数组还是主程序的数组,所以不需要重新分配是不是?怎么实现调用函数的数组和原来的数组分开来存储?
  • 由于实参可以是表达式,而数组元素可以是表达式的组成部分,因此数组元素当然可以作为函数的实参,与变量作实参一样,将数组元素的值传送给形参变量。 【例5.6】用函数处理例5.5。 算法和例5.5是一样的,今...
  • 数组元素作为函数的实参,用法跟普通变量作参数相同,将数组元素的值传递给形参进行函数体调用,函数调用完返回后,数组元素的值不变。这种传递方式是”值传递“方式,即只能从实参传递给形参,而不能从形参...
  • 数组名作为函数参数(1)

    千次阅读 2014-11-11 17:32:23
    数组名就是数组的首地址,当实参向形参传送数组名时,实际上就是传送数组的地址,形参得到该地址后就与主调函数中的实参指向同一数组。这样,在被调函数中对数组元素的值进行修改返回主调函数后,通过实参同样可以...
  • 1.可以二维数组名作为实参或者形参,在被调用函数中对形参数组定义可以指定所有维数的大小,也可以省略 第一维的大小说明,如:   void Func(int array[3][10]);   void Func(int array[][10]); 调用函数...
  • 可能很多初学者对C语言中(C++类似),数组作为参数传递,和一个函数如何返回一个数组这类问题很迷惑,因为这里面涉及到指针问题,而初学者对指针了解甚少,更别说使用了。我也是刚刚需要实现一个简单算法才用到这...
  • C语言中数组名作为参数进行函数传递在普通变量或下标变量作函数参数,形参变量和实参变量是由编译系统分配的两个不同的内存单元。在函数调用时发生的值传送是把实参变量的值赋予形参变量。在用数组名作函数参数...
  • 6.4数组作为函数参数

    2020-07-13 19:37:44
    因为形参的作用是,在函数调用时,临时分配存储空间的,数组的存储是一段连续的存储空间,不能为其中某一个数组元素单独分配一块存储空间,所以数组元素不能作为形参。 数组元素作为函数实参,是把实参的
  • 数组作为函数参数

    2016-11-15 21:08:09
    因此它作为函数实参使用与普通变量是完全相同的,在发生函数调用时,把作为实参的数组元素的值传送给形参,实现单向的值传送。数组名作为函数参数用数组名作函数参数用数组元素作实参有几点不同。
  • C语言中,数组名作为参数传递给函数时,退化为指针;需要数组大小, 需要一个参数传数组名,另一个传数组大小。 数组名函数参数,就相当于指针了。sizeof对指针操作结果应该是4。  一般函数参数为数组...

空空如也

空空如也

1 2 3 4 5 ... 20
收藏数 1,119,132
精华内容 447,652
关键字:

若函数调用时用数组名作为函数参数