5、C语言程序中,如果指针变量做函数的形参,则当函数调用时()是正确的说法。A.实参和形参都应该具有相同的数据类型B.实参和形参都应该是相同类型的指针变量C.形参是指针常量,实参是指针变量D.实参是指针常量,形参是指针变量

题目

5、C语言程序中,如果指针变量做函数的形参,则当函数调用时()是正确的说法。

A.实参和形参都应该具有相同的数据类型

B.实参和形参都应该是相同类型的指针变量

C.形参是指针常量,实参是指针变量

D.实参是指针常量,形参是指针变量


相似考题
更多“5、C语言程序中,如果指针变量做函数的形参,则当函数调用时()是正确的说法。”相关问题
  • 第1题:

    ● 关于C 语言的函数参数,下列叙述中正确的是 (60) 。

    A. 只有在发生函数调用时,函数中的形参才被分配内存单元

    B. 实参对形参的数据传递是单向的 “值传递”,因此,在被调用的函数当中, 没有办法去修改主调函数中任何变量的值

    C. 形参变量所占用的内存单元位于堆中

    D. 如果形参是数组名,则传递的是每个数组元素的值


    正确答案:A

  • 第2题:

    如果在某fun函数,要修改主函数中的某个变量的值,那么可以在fun函数中定义一个指针形参变量,通过指针变量间接引用主函数的变量。()

    此题为判断题(对,错)。


    参考答案:正确

  • 第3题:

    若有函数 void fun(double a[]。int*n) {…} 以下叙述中正确的是( )。

    A.调用fun函数时只有数组执行按值传送,其他实参和形参之间执行按地址传送

    B.形参a和n都是指针变量

    C.形参a是一个数组名,n是指针变量

    D.调用fun函数时将把double型参数组元素一一对应地传送给形参a数组


    正确答案:B
    本题考查函数中数组和指针的传值,数组a[]在参数传递时,是传递的数组a的首地址,所以形参a和n都是指针变量。。

  • 第4题:

    下列叙述错误的是( )。

    A.函数名是属于用户标识符,需符合C语言对标识符的规定

    B.形参只能是变最

    C.为保证程序的正常运行,函数中定义的变量不能与其他函数中的变量同名

    D.函数中定义的变量可以与其他函数中的变量同名


    正确答案:C
    解析:本题考查函数调用时参数的作用域。在函数调用时,函数体内定义的变量的作用域连函数体内,因而在不同函数体内定义的变量可以相同,不影响各个变量的使用。

  • 第5题:

    以下关于C语言的函数参数叙述中,说法正确的是(28)。

    A.只有在发生函数调用时,函数中的形参才被分配内存单元

    B.如果形参是数组名,则传递的是每个数组元素的值

    C.形参变量所占用的内存单元位于堆中

    D.实参对形参的数据传递是单向的“值传递”,因此,在被调用的函数之中,无法去修改主调函数中任何变量的值


    正确答案:A
    解析:定义函数时函数名后括号中的变量名称为形式参数。调用函数时函数名后括号中的表达式称为实际参数。形参在未出现函数调用时,并不占内存中的存储单元。只有在发生函数调用时,函数中的形参才被分配内存单元。在调用结束后,形参所占的内存单元也被释放。因此选项A说法正确。通常认为数组名是一个地址常量,当数组名作为形参时,则传递的是数组的起始地址,而不是每个数组元素的值。由此可见选项B说法错误。操作系统内存的栈空间用于保存运行的上下文、函数调用时的局部变量和形参。因此选项C说法错误。C语言规定,实参对形参的数据传递是“值传递”,即单向传递(实参的值可以传给形参,形参的值不能传给实参)。在内存中,实参单元与形参单元是不同的单元。在被调用的函数当中,函数返回值将影响主调函数中相关变量的值。由此可见,选项D说法错误。

  • 第6题:

    下列是函数的引用调用的是()。

    • A、形参是指针,实参是地址值
    • B、 形参是变量,实参是引用
    • C、形参是指针,实参是数组名
    • D、形参是引用,实参是变量

    正确答案:D

  • 第7题:

    在main()函数中定义变量XYZ,则变量XYZ的作用域是()。

    • A、整个程序
    • B、main()函数
    • C、所在文件
    • D、main()函数及被调函数

    正确答案:B

  • 第8题:

    函数viodfun(doublea[],int*n){………}叙述中正确的是()。()

    • A、调用fun函数时只有数组执行按值传送,其他实参和形参之间执行按地址传送
    • B、形参a和n都是指针变量
    • C、形参a是一个数组名,n是指针变量
    • D、调用fun函数时将把double型实参数组元素一一对应地传送给形参a数组

    正确答案:C

  • 第9题:

    已知类A中的一个成员函数的说明如下:voidSet(A&a);则该函数的参数“A&a”的含义是()。

    • A、指向A的指针为a
    • B、将变量a的地址赋给类A
    • C、类A对象引用a用作函数的形参
    • D、变量A与a按位与后作函数参数

    正确答案:C

  • 第10题:

    单选题
    在main()函数中定义变量XYZ,则变量XYZ的作用域是()。
    A

    整个程序

    B

    main()函数

    C

    所在文件

    D

    main()函数及被调函数


    正确答案: C
    解析: 暂无解析

  • 第11题:

    多选题
    下列不正确的是():
    A

    可以直接调用函数取代非var形参,将函数的值传给子程序

    B

    可以指定表达式取代非var形参,表达式的类型要与相应形参类型一致

    C

    可以将数值、函数、常量传递给var形参

    D

    如果指定变量为实参,变量的值将传递给子程序


    正确答案: B,C
    解析: 暂无解析

  • 第12题:

    单选题
    下列关于函数参数的叙述中,正确的是(  )。
    A

    在函数原型中不必声明形参类型

    B

    函数的实参和形参共享内存空间

    C

    函数形参的生存期与整个程序的运行期相同

    D

    函数的形参在函数被调用时获得初始值


    正确答案: A
    解析:
    A项错误,在函数原型中可以不声明形参名称,但是必须声明形参类型;B项错误,函数的实参与形参是两个不同的变量,有各自的存储空间;C项错误,函数形参的生命周期是从函数开始到函数结束;D项正确,函数形参是函数的局部变量,在函数调用时获得初始值。

  • 第13题:

    关于C语言的函数参数,下列叙述中正确的是_________。

    A只有在发生函数调用时,函数中的形参才被分配内存单元

    B实参对形参的数据传递是单向的“值传递”,因为在被调用的函数中,没有办法去修改主调函数中任何变量的值

    C形参变量所占用的内存单元位于堆中

    D如果形参是数组名,则传递的是每个数组元素的值


    参考答案:A

  • 第14题:

    以下正确的叙述是______。

    A.C语言允许main函数带形参,且形参个数和形参名均可由用户指定

    B.C语言允许main函数带形参,形参名只能是argc和argv

    C.当main函数带有形参时,传给形参的值只能从命令行中得到

    D.若有说明:main(int argc,char *argv),则形参argc的值必须大于1


    正确答案:C
    解析:C语言通常允许main()函数带有两个参数,可由用户自己命令,但类型是固定的。第一个参数是整型,第二个参数是一个指向字符型指针数组的指针或一个基本类型为字符型的指针数组,此时传给形参的值只能从命令行中得到。

  • 第15题:

    若有函数

    Void fun( double a[ ],int *n)

    { …… }

    以下叙述中正确的是

    A)调用fun函数时只有数组执行按值传送,其他实参和形参之间执行按地址传送

    B)形参a和n都是指针变量

    C)形参a是一个数组名,n是指针变量

    D)调用fun函数时将把double型实参数组元素一一对应地传送给形参a数组


    正确答案:C
    【答案】C
    【知识点】函数参数传递
    【解析】a是形参数组的名字,接收从调用函数中传过来的实参数组的首地址,n是指针变量。

  • 第16题:

    设有定义语句 则以下叙述正确的是( ).A.f是指向函数的指针变量,该函数具有_个int类型的形参SX

    设有定义语句

    则以下叙述正确的是( ).

    A.f是指向函数的指针变量,该函数具有_个int类型的形参

    B.f是基类型为int的指针变量

    C.f是指向int类型一维数组的指针变量

    D.f是函数名,该函数的返回值是基类型为int类型的地址


    正确答案:A

  • 第17题:

    以下叙述中正确的是

    A.基类型不同的指针变量可以相互混用

    B.函数的类型不能是指针类型

    C.函数的形参类型不能是指针类型

    D.设有指针变量为double*p,则P+1将指针P移动8个字节


    正确答案:D
    A选项中,虽然不同基类型的指针变量占用字节数是相同的,但是不能混用。b选项中,所谓函数类型是指函数返回值的类型。在C语言中允许一个函数的返回值是一个指针(即地址),这种返回指针值的函数称为指针型函数;C选项中,函数的参数不仅可以是整型、实型、字符型等数据,还可以是指针类型;因此D选项正确。

  • 第18题:

    下列不正确的是(): 

    • A、可以直接调用函数取代非var形参,将函数的值传给子程序
    • B、可以指定表达式取代非var形参,表达式的类型要与相应形参类型一致
    • C、可以将数值、函数、常量传递给var形参
    • D、如果指定变量为实参,变量的值将传递给子程序

    正确答案:C,D

  • 第19题:

    关于函数的定义,以下正确的描述是()

    • A、如果函数不返回值,可以省略类型说明符
    • B、可以在同一程序中定义同名的函数,只要保证它们的返回值类型或形参列表不相同即可
    • C、同一函数中的形参名必须唯一,但可以与其他函数中的变量同名
    • D、如果函数体为空,则函数最外层的一对花括号可以省略

    正确答案:C

  • 第20题:

    下面描述项中正确的是哪些()

    • A、指针变量不可以作为函数的参数
    • B、定义函数时可以有一个或多个形参,也可以没有形参
    • C、函数是由函数首部与函数体构成的
    • D、main()函数可以调用任何其它函数

    正确答案:B,C,D

  • 第21题:

    下面关于函数子程序的描述中,正确的一顶是()?

    • A、函数值只能通过函数名返回
    • B、当实参为变量时,形参的改变影响实参的值
    • C、一个函数子程序只能返回一个函数值或一个变量值
    • D、函数值只能通过形实结合双向传递

    正确答案:A

  • 第22题:

    单选题
    下列是函数的引用调用的是()。
    A

    形参是指针,实参是地址值

    B

     形参是变量,实参是引用

    C

    形参是指针,实参是数组名

    D

    形参是引用,实参是变量


    正确答案: A
    解析: 暂无解析

  • 第23题:

    单选题
    已知类A中的一个成员函数的说明如下:voidSet(A&a);则该函数的参数“A&a”的含义是()。
    A

    指向A的指针为a

    B

    将变量a的地址赋给类A

    C

    类A对象引用a用作函数的形参

    D

    变量A与a按位与后作函数参数


    正确答案: C
    解析: 暂无解析

  • 第24题:

    单选题
    下面关于函数子程序的描述中,正确的一顶是()?
    A

    函数值只能通过函数名返回

    B

    当实参为变量时,形参的改变影响实参的值

    C

    一个函数子程序只能返回一个函数值或一个变量值

    D

    函数值只能通过形实结合双向传递


    正确答案: D
    解析: 暂无解析