• 新浪微博:
  • 微信 :
按键精灵电脑版
立即下载

软件版本:2014.06
软件大小:22.9M
更新时间:03-18

按键精灵安卓版
立即下载

软件版本:3.3.6
软件大小:62.5M
更新时间:01-16

按键精灵iOS版
立即下载

软件版本:1.6.0
软件大小:29.2M
更新时间:07-29

最新企业版UiBot
立即下载

软件版本:3.3
软件大小:282M
更新时间:08-06

快捷导航

登录 后使用快捷导航
没有帐号? 注册

登录 注册
发新话题 回复该主题

[认证提问] 四级认证 有一题哪里错了啊!帮忙看下 1月 下个月 2月是31天的? [复制链接]

1#
错题展示:
1、写一个函数,参数为某个日期,参数格式为:\"年-月-日\",例如代入\"2012-02-11\"日期后能正确给出下月的天数请作答。(切勿修改本机上的本地时间进行测试) 尝试输入\"2012-01-11\" 返回31天

官网给出的错题说明,1月下个月 不是2月吗 是31天的? 还是我理解错了?

我交上去写的代码:
  1. Function GetNextMonDayNum(date)
  2. Dim DateArr, YearNum, MonthNum
  3. DateArr = Split(date, "-")
  4. YearNum = DateArr(1)
  5. If DateArr(2) = "11" or DateArr(2) = "12" Then
  6. MonthNum = DateArr(2)
  7. Else
  8. MonthNum = Right (DateArr(2),1)
  9. End If
  10. If (CLng(YearNum) mod 4 = 0 and CLng(YearNum) mod 100 <> 0) or CLng(YearNum) mod 400 = 0 Then
  11. TracePrint ("闰年")
  12. If MonthNum = "1" Then
  13. Return ("29")
  14. ElseIf MonthNum = "12" or MonthNum = "2" or MonthNum = "4" or MonthNum = "6" or MonthNum = "7" or MonthNum = "9" or MonthNum = "11" Then
  15. Return ("31")
  16. Else
  17. Return ("30")
  18. End If
  19. Else
  20. TracePrint ("平年")
  21. If MonthNum = "1" Then
  22. Return ("28")
  23. ElseIf MonthNum = "12" or MonthNum = "2" or MonthNum = "4" or MonthNum = "6" or MonthNum = "7" or MonthNum = "9" or MonthNum = "11" Then
  24. Return ("31")
  25. Else
  26. Return ("30")
  27. End If
  28. End If
  29. End Function
复制代码

2#

题目的列子应该指的是,"2012-01-11"到下个月"02-11" 返回31天 吧.

低调做人,走自己的路!
3#

有点复杂,等看看回复

4#

题目出的表述不清,不知是本月还是下月有几天

5#

//题目
//1、写一个函数,参数为某个日期,参数格式为:\"年-月-日\",
//例如代入\"2012-02-11\"日期后能正确给出下月的天数请作答。
//(切勿修改本机上的本地时间进行测试) 尝试输入\"2012-02-11\" 返回31天
//解答
//作者炎之舞
Dim datainput
Function getnextmouthnumber(data1)
mpre = month(data1)
mnext = cint(mpre + 1) mod 12
//判断下一个月,年进位没有
If mnext = 0 Then
yearnext = yearpare + 1
Else
yearnext = yearpre
End If
//判断闰年
If mnext = 2 Then
If cint(yearnext) mod 4 = 0 and cint(yearnext) mod 100 <> 0 or cint(yearnext) mod 400 = 0 Then
//是闰年
getnextmouthnumber = 29
MsgBox "下个月是闰年" & mnext & "月份,有" & getnextmouthnumber & "天"
Else
getnextmouthnumber = 28
MsgBox "下个月是平年" & mnext & "月份,有" & getnextmouthnumber & "天"
End If
End If
//<>---------------------------------------------以下是选择条件结结构判断
Select Case mnext
Case 1, 3, 5, 7, 8, 10, 0
getnextmouthnumber = 31
MsgBox "下个月是"&yarnext&"年"&mnext&"月份,有"&getnextmouthnumber &"天"
Case 4, 6, 9, 11
getnextmouthnumber = 31
MsgBox "下个月是"&yarnext&"年"&mnext&"月份,有"&getnextmouthnumber &"天"
End Select
End Function
//主程序开始
datainput = "2004-1-31"
Call getnextmouthnumber(datainput)
//作者炎之舞

6#

你的return语句不过关,不知你是哪个版本的。
你把所有的return换成GetNextMonDayNum=,试试

7#

测出现在是几月,就知道下个月了。再计算出下月总天数输出。
关键点,现在月如果是11 12月要注意 推算下个月 和下下个月 会到1月了。。要注意就能满分了

发新话题 回复该主题