How to create an array containing a range of numbers in C

1 Answer

0 votes
#include <stdio.h>
#include <stdlib.h>

int* createRangeArray(int start, int end) {
    int size = end - start + 1;
    int *arr = (int*)malloc(size * sizeof(int));
    
    if (arr == NULL) {
        return NULL;
    }
    
    for (int i = 0; i < size; ++i) {
        arr[i] = start + i;
    }
    
    return arr;
}

int main() {
    int start = 3;
    int end = 11;
    int *rangeArray = createRangeArray(start, end);
    int size = end - start + 1;

    if (rangeArray == NULL) {
        printf("malloc error\n");
    } else {
        for (int i = 0; i < size; ++i) {
            printf("%d ", rangeArray[i]);
        }
    }

    free(rangeArray);

    return 0;
}

      
       
/*
run:
    
3 4 5 6 7 8 9 10 11
   
*/

 



answered Feb 2, 2025 by avibootz

Related questions

1 answer 101 views
1 answer 89 views
1 answer 116 views
1 answer 116 views
1 answer 99 views
1 answer 130 views
...