Я хочу перевернуть элемент массива, используя указатель. Но почему я получаю вывод как 4 3 3 4, когда я даю ввод 1 2 3 4
здесь мой код
#include <stdio.h>
#include <stdlib.h>
int main(int argc, char const *argv[])
{
int n, a[100], *ptr;
printf("enter array size: ");
scanf("%d",&n);
printf("enter array element: ");
for(int i=0; i<n; i++)
{
scanf("%d",&a[i]);
}
ptr = &a[0];
int j=0;
int i = n-1;
while(j != n)
{
a[j] = *(ptr+i);
j++;
i--;
}
// for printing output
printf("\nin reverse: \n");
for(int k=0; k<n; k++)
{
printf("%d, ",a[k]);
}
return 0;
}
Кто-нибудь может сказать мне, в чем здесь проблема?