C语言如何高八位和低八位互换

题目是:编程实现把十六进制数10f这个数的高八位和低八位互换
还没有学到for循环希望能有一种简单的解决方法

int a=0x10f;
int b=(a&0xff)<<8 | a>>8;

8位是256,所以只要一个除以256,一个求余256就拆出来了
short a;
scanf("%hd",&a);
short b = a/256;
short c = a%256;
short d = c*256+b;
printf("%hd",d);