用D语言解面试题3

看了:http://blog.csdn.net/chszs/article/details/1562576

用D语言实现

/*

假设有个int型的数n,实现高低位的互换,比如12345,给换成54321,写一个方法实现n的高低位的互换。(n是几不知道)
*/
/*
  思路:把int值变换为数组,借用D语言数组的特殊值$快速交换。
  优点:简洁、快速。
*/

module switchPosition;


import std.stdio;
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);

}


评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值