小弟我是小菜,有个小疑点想请问一下大家
我是小菜,有个小问题想请教一下大家
这是一个计算相隔两年间天数的代码:
代码基本上没问题,有几个问题大家可以告诉我吗?如下:
1.代码运行后,是这样的:
从哪一年开始:
从哪一年开始:
(让你输入第一个年份)
(让你输入第二个年份)
(结果)。。。。。。
那么怎样才可以变成这样呢?
从哪一年开始:
(让你输入第一个年份)
从哪一年开始:
(让你输入第二个年份)
(结果)。。。。。。
2.for语句当中的day不是局部变量吗?但是为什么再循环之后,可以被输出呢?
即“System.out.println("总天数为:"+day+"天");"这一句.
------解决方案--------------------
day 在for循环外面定义的,所以在后面还可以访问到
------解决方案--------------------
public static void main(String[] args) {
System.out.println("从哪一年开始:");
Scanner A = new Scanner(System.in);
int a = A.nextInt();
System.out.println("从哪一年开始");
Scanner B = new Scanner(System.in);
int b = B.nextInt();
int day = 0;
for (int i = a; i <= b; i++) {
if (i % 4 == 0 && i % 100 != 0
------解决方案--------------------
i % 400 == 0) {
day = day + 366;
} else {
day = day + 365;
}
}
System.out.println("总天数为:" + day + "天");
}
这是一个计算相隔两年间天数的代码:
import java.util.Scanner;
public class tianshu{
public static void main(String[] args){
Scanner A=new Scanner(System.in);
System.out.println("从哪一年开始:");
int a;
Scanner B=new Scanner(System.in);
System.out.println("从哪一年开始");
int b;
int day=0;
for(a=A.nextInt(),b=B.nextInt();a<=b;a++){
if(a%4==0&&a%100!=0||a%400==0){
day=day+366;
}else{
day=day+365;
}
}
System.out.println("总天数为:"+day+"天");
}
}
代码基本上没问题,有几个问题大家可以告诉我吗?如下:
1.代码运行后,是这样的:
从哪一年开始:
从哪一年开始:
(让你输入第一个年份)
(让你输入第二个年份)
(结果)。。。。。。
那么怎样才可以变成这样呢?
从哪一年开始:
(让你输入第一个年份)
从哪一年开始:
(让你输入第二个年份)
(结果)。。。。。。
2.for语句当中的day不是局部变量吗?但是为什么再循环之后,可以被输出呢?
即“System.out.println("总天数为:"+day+"天");"这一句.
------解决方案--------------------
public static void main(String[] args){
Scanner A=new Scanner(System.in);
System.out.println("从哪一年开始:");
int a = A.nextInt();
Scanner B=new Scanner(System.in);
System.out.println("从哪一年结束");
int b = B.nextInt();
int day=0;
for(;a<=b;a++){
if(a%4==0&&a%100!=0
------解决方案--------------------
a%400==0){
day=day+366;
}else{
day=day+365;
}
}
System.out.println("总天数为:"+day+"天");
}
day 在for循环外面定义的,所以在后面还可以访问到
------解决方案--------------------
public static void main(String[] args) {
System.out.println("从哪一年开始:");
Scanner A = new Scanner(System.in);
int a = A.nextInt();
System.out.println("从哪一年开始");
Scanner B = new Scanner(System.in);
int b = B.nextInt();
int day = 0;
for (int i = a; i <= b; i++) {
if (i % 4 == 0 && i % 100 != 0
------解决方案--------------------
i % 400 == 0) {
day = day + 366;
} else {
day = day + 365;
}
}
System.out.println("总天数为:" + day + "天");
}