📜  将数组作为输入 - C 编程语言(1)

📅  最后修改于: 2023-12-03 15:39:17.867000             🧑  作者: Mango

将数组作为输入 - C 编程语言

在 C 编程语言中,我们可以将数组作为输入来进行一些操作,比如计算数组元素的和、找到最大值、最小值等等。

传递数组作为参数

我们可以将数组作为参数传递给函数,从而实现对数组进行一些操作,比如计算数组元素的和。


#include <stdio.h>

int sum(int arr[], int size) {
  int sum = 0;
  for (int i = 0; i < size; i++) {
    sum += arr[i];
  }
  return sum;
}

int main() {
  int arr[] = {1, 2, 3, 4, 5};
  int size = sizeof(arr) / sizeof(arr[0]);
  int arr_sum = sum(arr, size);
  printf("Sum of array is %d", arr_sum);
  return 0;
}

在上面的代码中,我们定义了一个 sum 函数,该函数接受一个整数数组和数组的大小作为参数。该函数通过循环来计算数组的总和,并将其返回。

在主函数中,我们定义了一个整数数组和数组的大小,并调用了 sum 函数来计算数组的总和。然后我们将计算结果输出到控制台。

通过指针传递数组

在 C 编程语言中,我们也可以通过指针来传递数组。这是因为当我们传递数组作为参数时,实际上是传递了数组的地址,而指针可以用来保存地址。


#include <stdio.h>

int sum(int *arr, int size) {
  int sum = 0;
  for (int i = 0; i < size; i++) {
    sum += *(arr + i);
  }
  return sum;
}

int main() {
  int arr[] = {1, 2, 3, 4, 5};
  int size = sizeof(arr) / sizeof(arr[0]);
  int arr_sum = sum(arr, size);
  printf("Sum of array is %d", arr_sum);
  return 0;
}

在上面的代码中,我们将 arr 数组的地址传递给 sum 函数,并在函数中使用指针来访问数组元素。具体来说,我们使用 *(arr + i) 来代替 arr[i]。这两种形式具有相同的效果。

从用户获得输入数组

我们也可以从用户获得输入的整数数组,然后对其进行操作。


#include <stdio.h>

int main() {
  int arr[5];
  printf("Enter 5 numbers:\n");

  for (int i = 0; i < 5; i++) {
    scanf("%d", &arr[i]);
  }

  int sum = 0;
  for (int i = 0; i < 5; i++) {
    sum += arr[i];
  }

  printf("Sum of array is %d", sum);
  return 0;
}

在上面的代码中,我们使用 scanf 函数从用户处获取了输入的整数数组的五个元素。然后我们对数组进行求和,并将结果输出到控制台。

结论

在 C 编程语言中,可以方便地将数组作为输入来进行一些操作。我们可以将数组作为参数传递给函数,也可以通过指针来传递数组。此外,我们还可以从用户处获得输入数组进行操作。