How to get the first two digits of int number in C

2 Answers

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

int main(void) {
    int n = 8405961;
    printf("n: %d\n", n);

    int tmp = n, first_two_digits = n; 
    while (n) {
        first_two_digits = tmp;
        tmp = n;
        n /= 10;
    }   
    
    printf("first two digits: %d\n", first_two_digits);
    
    return 0;
}


  
/*
run:
  
n: 8405961
first two digits: 84
 
*/

 



answered Jan 15, 2021 by avibootz
0 votes
#include <stdio.h>
#include <math.h>

int main(void) {
    int n = 8405961;
    printf("n: %d\n", n);

    int totaldigits_minustwo = (int)log10(n) - 1; 
 
    int first_two_digits = (int)(n / pow(10, totaldigits_minustwo));
    
    printf("first two digits: %d\n", first_two_digits);
    
    return 0;
}



  
/*
run:
  
n: 8405961
first two digits: 84 
 
*/

 



answered Jan 15, 2021 by avibootz

Related questions

1 answer 185 views
2 answers 243 views
1 answer 242 views
1 answer 178 views
1 answer 182 views
1 answer 188 views
188 views asked Dec 1, 2020 by avibootz
...