作业题计算自己的生日是该年中第几天
function date(){
var num1=prompt("请输入您的出生年份");
if(num1%4=0){
break;
}else if(num1%4!=0){
}
var num2=prompt("请输入您的出生月份");
var num3=prompt("请输入您的出生日期");
}
写不下去了 不会?????怎么写代码
正在回答 回答被采纳积分+1
<script>
var year=parseInt(prompt("请输入出生年份"));
var month=parseInt(prompt("请输入出生月份"));
var day=parseInt(prompt("请输入出生日期"));
if ((year%4==0 && year%100!=0 && month>2)||( year%400==0 && month>2)) {
day++;
}
var i,sum=0;
var num=[31,28,31,30,31,30,31,31,30,31,30,31];
for (i=0;i<month-1;i++) {
sum+=num[i];}
document.write("你的生日在"+year+"的第"+(sum+day)+"天");
</script>
var useryear=prompt("请输入您的出生年份"); var usermonth=prompt("请输入您的出生月份"); var userday=prompt("请输入您的出生日期") var daysort=[31,28,31,30,31,30,31,31,30,31,30,31]; var r=0; function add(){console.log(!(useryear%4)); if(useryear%4){ daysort[1]=28; }else{ daysort[1]=29; } for(var s=0;s<usermonth-1;s++){ r=r+daysort[s]; } r=r+parseInt(userday); //console.log(r); return r; } var ss=parseInt(add()); //var zs=document.getElementById("boxshadow-multi"); //zs.innerHTML=ss; document.write("您出生在"+useryear+"在第"+ss+"天");
给你一个思路吧,最好自己动手试试。
1、 计算日期时可以用我们所学的条件判断语句switch和else if去实现,比如:
当出生月分是1时,出生的第几天就是用户输入的日期;
当月份是2时,出生的第几天就是1月份的天数加上2月份出生的日期,以此类推。
还有一种算法比较简单的:
2、定义一个平年(或闰年)的数组,数组中存在的是所有月份对应的天数,进行累加计算,直到加到我们获取到的月份为止。然后判断是否为闰年,若为闰年且月份大于2月,则在总的天数上加1;
数组的下标是从0开始的,若i小于等于month-1的话,就会把输入得当前月份,按照完整月份加上,实际这个月还没过完,是不能加的;建议:i小于month-1即可
建议2月份先按照28天计算,最后判断一下年份是否为闰年,如果是,最后的累加结果在加上1天,如果不是,就无需加1了
闰年的条件:
(1) 年份能整除4但是不能整除100
(2) 年份能整除400
- 参与学习 547 人
- 提交作业 206 份
- 解答问题 640 个
JavaScript作为前端学习中的一个重要组成部分,本课程将带领你从最基础的语法开始,学习js的流程控制语句、函数、内置对象、DOM基础、DOM事件、BOM基础以及经典的js案例--轮播图。
了解课程
恭喜解决一个难题,获得1积分~
来为老师/同学的回答评分吧
0 星