找出计算年龄的最佳算法。要求:
1.精确到天,比如出生年月是2/18/2000,2/17/2008的时候年龄是7岁,而不是8岁。
2 返回数字型年龄
3 返回字符串,4岁以下的返回月,例如10 months,4岁以上的返回年,如 65 years
4 注意每个月的天数区别,闰年也要考虑
5 用sql, c#, asp, javascript, java 5种语言实现同样的算法,确保整个系统都可以用。
1.精确到天,比如出生年月是2/18/2000,2/17/2008的时候年龄是7岁,而不是8岁。
2 返回数字型年龄
3 返回字符串,4岁以下的返回月,例如10 months,4岁以上的返回年,如 65 years
4 注意每个月的天数区别,闰年也要考虑
5 用sql, c#, asp, javascript, java 5种语言实现同样的算法,确保整个系统都可以用。
解决方案 »
- MVC 数据的提交问题,望高手解答,在线等
- asp.net Server.MapPath()问题;
- 如何使在CrystalReportViewer在鼠标单击时不弹出子报表
- 怎样用JS取消 checkboxlist 的不可用状态?
- PasswordRecovery控件找回密码出问题
- 为什么插入了两个服务器文本框控件,出来以后两个框长度不一样
- 大家有没有见过这样的DataGrid,就是左边一列不动,然后可以拖动滚动条查看右边的各列,效果跟交叉表一样,例如左边是显示日期,然后其右边各
- 怎样让Datagrid或DataList旋转90度,我的行太长了
- a页面存入数据库,b页面读取数据库,c页面显示 用ajax做,可以做到吗?a是不断写入数据库的
- 请问怎么用 vs.net在提供asp.net的共享服务器上创建asp.net工程???
- 再问搜索引擎关键字字符串的读取问题(急急!!)
- 问一个javascript问题
包括2.29
http://topic.csdn.net/u/20070913/18/b10217c0-78b3-4281-962a-4ba6e055a56b.html
给你一段C#的算年龄的代码 DateTime dt = new DateTime(2006, 2, 14);
int age = DateTime.Now.Year - dt.Year;
if (dt.AddYears(age) > DateTime.Now)
{
age--;
}
Console.WriteLine(age.ToString()); if (age < 4)
{
int month = DateTime.Now.Month - dt.Month;
if (dt.Day > DateTime.Now.Day)
{
month--;
} if (month < 0)
{
month += 12;
}
month += age * 12;
Console.WriteLine(month.ToString() + " months");
}
至于WebService里面实现那就简单了,求TimeSpan的 TotalMonth, 如果小于48就直接输出月,否则输出TotalYear ,然后格式化字符串。搞定~~保证精确到秒都行了。而且闰年闰月全考虑到了
剩下最后一个问题,Sql的, 很简单,不要实现,数据库就干数据库的事情,如果你系统里有需要数据库做这件事情的,说明设计有问题,修改设计。
----------
纯属吃饱了撑的。ps:看上去像家庭作业...