看了:http://blog.csdn.net/chszs/article/details/1562576
用D语言实现
/*
假设有个int型的数n,实现高低位的互换,比如12345,给换成54321,写一个方法实现n的高低位的互换。(n是几不知道)*/
/*
思路:把int值变换为数组,借用D语言数组的特殊值$快速交换。
优点:简洁、快速。
*/
module switchPosition;
import std.conv;
import std.array;
import std.process;
void main(){
string tip = "Please input some numbers such as: 12345.";
executeShell("chcp 65001"); //D语言在此CodePage下设置字体为Lucida Console,可正确显示中文
writeln(tip);
char[] a;
stdin.readln(a);
if(a.length <=0)
{
writeln(tip);
return;
}
a = a[0..$-1]; //去除字符尾的'\n'
writeln("current numbers is :",a);
char t;
for(uint i=0;i<a.length/2;i++)
{
t = a[i];
a[i] = a[$-i-1];
a[$-i-1] =t;
}
writeln("after switch number: ",a);
}