/*?本問題的關鍵是如何交換ASCII的二進制位,下面提供簡短算法,並附上VC++?6.0環境下的運行結果截圖。
*/
#include?<stdio.h>
char?swapbit(char?c)?{
char?i,num?=?0,ch[8];
for(i?=?0;i?<?8;i++)?{
ch[i]?=?c&1;
c?=?(c?>>?1);
}
for(i?=?0;i?<?8;i++)?{
num?=?2*num?+?ch[i];
}
return?num;
}
int?main()?{
char?ch;
for(ch?=?'A';ch?<=?'Z';ch++)?{
printf("%c?=?%X?:?%X\n",ch,ch,0XFF&swapbit(ch));
}
return?0;
}