21xrx.com
2024-04-26 06:11:00 Friday
登录
文章检索 我的文章 写文章
C中的反向数组
2021-07-07 07:12:14 深夜i     --     --
C

C 程序使用附加数组、交换和使用函数来反转数组。 例如,如果'A'是一个包含三个元素的整数数组,使得,A[0] = 1,A[1] = 2,A[2] = 3,那么在反转之后,该数组将是A[0] = 3 , A[1] = 2, A[0] = 1

 

反向数组C程序

#include <stdio.h>


int main()
{
  int n, c, d, a[100], b[100];

  printf("Enter the number of elements in array\n");
  scanf("%d", &n);

  printf("Enter array elements\n");

  for (c = 0; c < n ; c++)
    scanf("%d", &a[c]);

  // Copying elements into array b starting from the end of array a

  for (c = n - 1, d = 0; c >= 0; c--, d++)
    b[d] = a[c];

  // Copying reversed array into the original, we are modifying the original array.

  for (c = 0; c < n; c++)
    a[c] = b[c];

  printf("The array after reversal:\n");

  for (c = 0; c < n; c++)
    printf("%d\n", a[c]);

  return 0;
}

 

反向数组C程序输出:

下载反向阵列程序。

通过交换反转数组(不使用额外的内存)

#include <stdio.h>


int main() {
  int array[100], n, c, t, end;

  scanf("%d", &n);
  end = n - 1;

  for (c = 0; c < n; c++)
    scanf("%d", &array[c]);

  for (c = 0; c < n/2; c++) {
    t          = array[c];
    array[c]   = array[end];
    array[end] = t;

    end--;
  }

  printf("Reversed array elements are:\n");

  for (c = 0; c < n; c++)
    printf("%d\n", array[c]);

  return 0;
}

使用函数反转 C 中的数组

#include <stdio.h>


void reverse_array(int [], int);

int main()
{
  int n, c, a[1000];

  scanf("%d", &n);

  for (c = 0; c < n; c++)
    scanf("%d", &a[c]);

  reverse_array(a, n);

  printf("The array after reversal:\n");

  for (c = 0 ;c < n; c++)
    printf("%d\n", a[c]);

  return 0;
}

void reverse_array(int a[], int n)
{
  int c, t;

  for (c = 0; c < n/2; c++) {
    t = a[c];                  // Swapping
    a[c] = a[n-c-1];
    a[n-c-1] = t;
  }
}

 

  
  

评论区

{{item['qq_nickname']}}
()
回复
回复