Write a function that reverses the contents of an array of double and test it in
ID: 3937862 • Letter: W
Question
Write a function that reverses the contents of an array of double and test it in a simple program.
GIVEN CODE:
#include <stdio.h>
#include <stdlib.h>
void PrintArray(int *a, int size)
{
int i;
for (i = 0; i < size; i++)
printf("%d ", *(a+i));
printf(" ");
}
int main()
{
int *pa;
int size;
int i, j;
int temp;
printf("Data size: ");
scanf("%d", &size);
if (size < 1)
return -1;
pa = (int*) malloc( size * sizeof(int));
if (pa == NULL){
printf(" Error ");
return -2;
}
for (i = 0; i < size; i++)
scanf("%d", (pa + i));
printf(" Array: ");
PrintArray(pa, size);
// Reverses the Array Here
printf(" New Array ");
PrintArray(pa, size);
free(pa);
return 0;
}
Explanation / Answer
#include <stdio.h>
#include <stdlib.h>
void PrintArray(int *a, int size)
{
int i;
for (i = 0; i < size; i++)
printf("%d ", *(a+i));
printf(" ");
}
int main()
{
int *pa,*z;
int size;
int i, j;
int temp;
printf("Data size: ");
scanf("%d", &size);
if (size < 1)
return -1;
pa = (int*) malloc( size * sizeof(int));
if (pa == NULL){
printf(" Error ");
return -2;
}
for (i = 0; i < size; i++)
scanf("%d", (pa + i));
printf(" Array: ");
PrintArray(pa, size);
// Reverses the Array Here
z = (int*) malloc( size * sizeof(int));
for(i=1;i<=size;i++)
{
z[size-i]=pa[i-1];
}
pa=z;
printf(" New Array ");
PrintArray(pa, size);
free(pa);
return 0;
}
Related Questions
drjack9650@gmail.com
Navigate
Integrity-first tutoring: explanations and feedback only — we do not complete graded work. Learn more.