How to swap first and last digit of a number in C

1 Answer

0 votes
#include <stdio.h>
#include <math.h>
  
int main()
{
	int n = 12758;
	
    int lastDigit = n % 10;

    int digits_minus_1 = (int)log10(n); 

    int firstDigit = (int)(n / pow(10, digits_minus_1)); 

    int swap  = lastDigit;
    swap *= (int) pow(10, digits_minus_1);
	printf("%d\n", swap);
    swap += n % ((int) pow(10, digits_minus_1));
	printf("%d\n", swap);
    swap -= lastDigit;
	printf("%d\n\n", swap);
    swap += firstDigit;
	
	n = swap;
	printf("%d\n", n);

    return 0;
}
  
  
  
/*
run:
  
80000
82758
82750

82751
  
*/

 



answered Jul 6, 2020 by avibootz

Related questions

3 answers 208 views
1 answer 134 views
2 answers 173 views
1 answer 189 views
1 answer 110 views
2 answers 165 views
1 answer 140 views
...