怎么做
  1. 题面里的虚线方框就是要填的空
  2. 点候选项,它会填进当前高亮的那个空
  3. 点已填好的空,可以把选项取回来重选
  4. 全部填满后「提交」才会亮起
卡住了就点右下角的 👩‍🏫 问 AI 老师,她会给提示但不直接给答案。

数组传给函数,改的是原数组

👁️ 23 人浏览 💬 0 人评论 ❤️ 添加收藏

数组作参数:函数拿到的是同一排格子,不是复印件

main 里的数组 s

4
5
6
0

函数里的 a

函数里 a[2] = 0,改的就是 s[2]

数组也能交给函数。形参写成 int a[](方括号里不用写长度),调用时只写数组名,不带方括号:

#include <stdio.h>

void set_x(int x)
{
    x = 0;
}

void set_first(int a[])
{
    a[0] = 0;
}

int main(void)
{
    int x = 5;
    int s[3] = {7, 8, 9};
    set_x(x);
    set_first(s);
    printf("%d %d %d\n", x, s[0], s[1]);
    return 0;
}

普通变量传的是值的复印件;数组名传过去的是「数组在内存里的位置」,函数里的 a 和 main 里的 s 是同一排格子。也因为只给了位置,函数并不知道数组有多长,所以一般还要再传一个长度 n。

程序的输出是【0】。

请登录后作答。
去登录
👩‍🏫
AI
💬 题目评论
🔒 登录并作答后可看讨论