#include <stdio.h> #include <stdint.h> uint32_t convert_endian(uint32_t value) { // Write logic to swap bytes int i, j; char *ptr = (char *)&value; char temp; for(i = 0, j = sizeof(value)-1; i < (sizeof(value)/2); i++, j--) { temp = *(ptr + i); *(ptr + i) = *(ptr + j); *(ptr + j) = temp; } return value; } int main() { uint32_t val; scanf("%u", &val); printf("%u", convert_endian(val)); return 0; }
Test Cases
Test Results
Input
305419896
Expected Output
2018915346