1-20作业
var year,mon,day,i,d;
//判断年份是否为数字
year=parseInt(prompt("请输入您的出生年份"));
while (isNaN(year)){
alert("请输入数字");
year=prompt("请输入您的出生年份");
}
//判断月份是否为数字
mon=parseInt(prompt("请输入您的出生月份"));
while (mon>12 || mon<1){
alert("请输入正确的出生月份");
mon=prompt("请输入您的出生月份");
}
//判断日期是否为正确
day=parseInt(prompt("请输入您的出生日期"));
while (day>31 || day<1){
alert("请输入正确的出生日期");
day=prompt("请输入您的出生日期");
}
d=0;
for(i=1;i<=mon;i++){
if(i==3 || i==5 || i==7 || i==8 || i==10 || i==12 ){
d+=31;
}else if(i==4 || i==6 || i==9 || i==11){
d+=30;
}else if (i==2){
if(year%4===0 && year%100!==0 || year%400===0)
{
d+=31;//判断闰年2月的天数,并补上1月的天数
}else {
d+=30;//判断平年2月的天数,并补上1月的天数
}
}
}
day=day+d;
document.write("您的生日在"+year+"年的第"+day+"天");
}
days();
这是按老师批改完后改的,为什么还是不行
正在回答 回答被采纳积分+1
同学可以参考一下代码修改一下哦 ,祝学习愉快 !
<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8">
<title>JavaScript</title>
</head>
<body>
<script>
var year,mon,day,i,d;
function days(){
//判断年份是否为数字
year=parseInt(prompt("请输入您的出生年份"));
while (isNaN(year)){
alert("请输入数字");
year=prompt("请输入您的出生年份");
}
//判断月份是否为数字
mon=parseInt(prompt("请输入您的出生月份"));
while (mon>12 || mon<1){
alert("请输入正确的出生月份");
mon=prompt("请输入您的出生月份");
}
//判断日期是否为正确
day=parseInt(prompt("请输入您的出生日期"));
while (day>31 || day<1){
alert("请输入正确的出生日期");
day=prompt("请输入您的出生日期");
}
d=0;
//不计算当月
for(i=1;i<mon;i++){
//for(i=1;i<=mon;i++){
//1月漏了
if(i==1 || i==3 || i==5 || i==7 || i==8 || i==10 || i==12 ){
//if(i==3 || i==5 || i==7 || i==8 || i==10 || i==12 ){
d+=31;
}else if(i==4 || i==6 || i==9 || i==11){
d+=30;
}else if (i==2){
if(year%4==0 && year%100!==0 || year%400==0){
d+=31;//判断闰年2月的天数,并补上1月的天数
}else {
d+=30;//判断平年2月的天数,并补上1月的天数
}
}
}
//1月漏了
if(mon<=2){
// if(mon==2){
day=day+d;
}else{
day=day+d-2;//减去多余的两天
}
document.write("您的生日在"+year+"年的"+day+"天");
}
days();
</script>
</body>
</html>
- 参与学习 人
- 提交作业 11218 份
- 解答问题 36713 个
从一个不会编程的小白到一个老司机是需要过程的,首先得入门,学习基础知识,然后才能进阶,最后再到精通,本专题是你走进前端世界的不二选择!
了解课程
恭喜解决一个难题,获得1积分~
来为老师/同学的回答评分吧
0 星