How to convert an array of digits to a number in C

2 Answers

0 votes
#include <stdio.h>     
 
#define LEN 6
  
int main()
{   
    int n = 0;
    int arr[LEN] = { 4, 6, 3, 9, 1, 2 };
  
    for (int i = 0; i < LEN; i++) {
         n = n * 10 + arr[i];
    }
  
    printf("n = %d\n", n);
     
    return 0;
}
 

 
/*
run:
   
n = 463912
 
*/


 



answered Mar 20, 2016 by avibootz
edited Mar 10, 2024 by avibootz
0 votes
#include <stdio.h>

int convert_int_array_to_int_number(int arr[], int arr_size) {
    int n = 0;
     
    for (int i = 0; i < arr_size; i++) {
        n = n * 10 + arr[i];
    } 
    
    return n;
}

int main() {
    int arr[] = {9, 4, 6, 3, 9, 1, 2};
    int arr_size = sizeof(arr) / sizeof(arr[0]);
    
    int n = convert_int_array_to_int_number(arr, arr_size);
    
    printf("n = %d\n", n);
    
    return 0;
}




/*
run:

n = 9463912

*/

 



answered Mar 10, 2024 by avibootz
...