1 条题解

  • 0
    @ 2026-4-3 11:58:40

    解析(文字)

    第1题:值传递时,形参是实参的副本,子函数修改不影响实参。地址传递(指针或引用)可以修改实参。函数调用必须满足参数个数要求。故选 A。

    第2题:引用传递可以直接修改实参。f(a) 中形参是引用,会直接修改 a 的值。其他选项语法错误或无法修改。故选 C。

    第3题:fun1(arr) 传递数组首地址,*n 为 arr[0]=2,返回 4,赋值给 arr[1],输出 4。故选 C。

    第4题:A 正确:返回类型 int,参数列表正确。B 返回 void 却 return a+b 错误。C 参数没有类型。D 返回 void 错误。故选 A。

    第5题:形参在函数定义时声明,实参在调用时传递。实参类型可以隐式转换,不必完全相同。故选 B。

    第6题:main 中输出全局 var=100;function 中局部 var=200,输出200,::var 访问全局 100;main 中 var+=100 全局 var 原为100,加100后为200。输出 100 200 100 200。故选 A。

    第7题:A 正确:有返回类型,调用正确。B 缺少返回类型。C 返回 void 却返回值。D 没有返回值,且 area 未定义。故选 A。

    第8题:n 是形参,times 是实参。值传递不影响实参,times 仍为 5。交换参数顺序会导致类型不匹配。故选 B。

    第9题:引用传递,x 是 a 的别名,修改 x 即修改 a,5*2=10。故选 B。

    第10题:函数可以先声明后定义,定义不必在 main 之前。A 错误。B、C、D 正确。故选 A。

    第11题:func 输出局部 x=20,main 输出全局 x=10,所以 2010。故选 B。

    第12题:指针 p 指向 a,解引用赋值 20 修改 a 为 20。故选 B。

    第13题:a 是值传递,修改不影响 x;b 是引用传递,修改影响 y。所以 x 仍为 1,y 变为 1,输出 11。故选 D。

    第14题:f() 使用默认参数 2,返回 6;f(4) 返回 12。输出 6 12。故选 B。

    第15题:**q 解引用两次得到 a,a +=7 变为 12,*p 也是 12。故选 B。

    第16题:a 值传递,x 不变;b 引用传递,y 变为 3;c 指针传递,z 变为 4。输出 1 3 4。故选 B。

    第17题:main 中局部 x=10,引用传递给 f,变为 12;::x 是全局 3。输出 12 3。故选 A。

    第18题:错误。函数重载与默认参数冲突,调用 calc(5) 有二义性。选 B。

    第19题:正确。引用传递修改 a 为 15。选 A。

    第20题:正确。引用在初始化后不可改变所绑定的对象。选 A。

    第21题:正确。全局变量可以被多个函数访问和修改。选 A。

    第22题:正确。指针参数可以修改所指向的值,也可以修改指针本身(但形参是拷贝)。选 A。

    第23题:错误。可以捕获任何类型的异常,包括结构体。选 B。


    • 1

    gesp四级真题分类一:函数与参数传递

    信息

    ID
    6085
    时间
    1000ms
    内存
    256MiB
    难度
    (无)
    标签
    (无)
    递交数
    0
    已通过
    0
    上传者