In: Computer Science
I'm having trouble getting a certain output with this code
#include <stdio.h>
//function prototypes
void initializeArray(int size, int ids[]);
void printArray(int size, int * idPointer);
int main(void) {
// 1. declare an array of 5 integers called ids
int ids[5];
  
// 2. declare an integer pointer called arrayPointer and
// initialize it to point to the array called ids
int *arrayPointer = ids;
// 3. call initializeArray() function sending to it
// 5 for the size and the array called ids
initializeArray(5,ids);
  
  
// 4. add 3 to the value at where arrayPointer is pointing to
*(arrayPointer) += 3;
// 5. add 5 to the value at 2 locations past
// where arrayPointer is pointing to
*(arrayPointer+1) += 5;
  
  
// 6. call printArray() function sending to it
// 5 for the size and arrayPointer
printArray(5, arrayPointer);
  
  
return 0;
}
// This function initializes an array ids of size "size"
void initializeArray(int size, int ids[]) {
    int i;
    for (i = 0; i < size; i++) {
        ids[i] = i * 100;
    }
}
// This function prints an array of size "size". The array is pointed at by idPointer
void printArray(int size, int * idPointer) {
    int i;
    for (i = 0; i < size; i++) {
        // 7. finish the code for the printf() statement
        printf("Element at index %d is %d\n", i,*(idPointer+i));
    }
}
| Element at index 0 is 3 | |
| Element at index 1 is 100 | |
| Element at index 2 is 205 | |
| Element at index 3 is 300 | |
| Element at index 4 is 400 | 
#include <stdio.h>
//function prototypes
void initializeArray(int size, int ids[]);
void printArray(int size, int *idPointer);
int main(void) {
// 1. declare an array of 5 integers called ids
    int ids[5];
// 2. declare an integer pointer called arrayPointer and
// initialize it to point to the array called ids
    int *arrayPointer = ids;
// 3. call initializeArray() function sending to it
// 5 for the size and the array called ids
    initializeArray(5, ids);
// 4. add 3 to the value at where arrayPointer is pointing to
    *(arrayPointer) += 3;
// 5. add 5 to the value at 2 locations past
// where arrayPointer is pointing to
    *(arrayPointer + 2) += 5;
// 6. call printArray() function sending to it
// 5 for the size and arrayPointer
    printArray(5, arrayPointer);
    return 0;
}
// This function initializes an array ids of size "size"
void initializeArray(int size, int ids[]) {
    int i;
    for (i = 0; i < size; i++) {
        ids[i] = i * 100;
    }
}
// This function prints an array of size "size". The array is pointed at by idPointer
void printArray(int size, int *idPointer) {
    int i;
    for (i = 0; i < size; i++) {
        // 7. finish the code for the printf() statement
        printf("Element at index %d is %d\n", i, *(idPointer + i));
    }
}
