Copy code
import javautilScanner;
public class LeapYear {
public static void main(String args[]) {
Scanner sc = new Scanner(Systemin);
Systemoutprint("请输入待判断的年份:");
int year = scnextInt();
boolean isLeapYear = false;
if (year % 4 == 0) {
if (year % 100 == 0) {
if (year % 400 == 0) {
isLeapYear = true;
} else {
isLeapYear = false;
}
} else {
isLeapYear = true;
}
} else {
isLeapYear = false;
}
if (isLeapYear) {
Systemoutprintln(year + "是闰年。");
} else {
Systemoutprintln(year + "不是闰年。");
}
}
}
这个程序中,首先提示用户输入一个年份,然后使用一个布尔变量isLeapYear来存储程序是否判断为闰年,如果是闰年,则为true,否则为false。然后使用嵌套的if语句来判断年份是否为闰年。如果年份可以被4整除,则可能是闰年,然后判断它是否也可以被100整除。如果年份可以被100整除,则只有当它同时能被400整除时才是闰年。如果年份不是可以被4整除的,则不是闰年。
最后使用if语句和输出语句来告诉用户输入的年份是否是闰年。
data segment
infon db 0dh,0ah,'Please input a year: $'
Y db 0dh,0ah,'This is a leap year! $'
N db 0dh,0ah,'This is not a leap year! $'
w dw 0 ;用于保存输入的年份的数值
buf db 8
db
db 8 dup()
data endsstack segment stack
db 200 dup(0)
stack endscode segment
assume ds:data,ss:stack,cs:code
start:mov ax,data
mov ds,ax
lea dx,infon ;在屏幕上显示提示信息
mov ah,9 ;显示字符串
int 21h lea dx,buf ;从键盘输入年份字符串
mov ah,0Ah ;0AH功能调用从键盘接受字符串到内存的输入缓存区
int 21h
xor ch,ch ;ch要清0,否则循环次数有误
mov cl, buf+1 ;把输入的字符的个数保存在cl中
call datacate ;调用datacate子程序
call ifyears ;调用ifyears子程序
jc a1
lea dx,n
mov ah,9
int 21h
jmp exit
a1: lea dx,y
mov ah,9
int 21h
exit: mov ah,4ch
int 21hdatacate proc near ;把表示年份的字符串转换为数值
push cx
dec cx
lea si,buf+2
tt1: inc si
loop tt1
pop cx mov ax,1
l1: push ax
mov dh,30h
mov bx,10
mov dl,[si] ;字符减去30H后即可转换为十六进制数
sub dl,dh
xor dh,dh
mul dx
add w,ax
pop ax
mul bx
dec si
loop l1
ret
datacate endp
ifyears proc near
push bx
push cx
push dx
mov ax,w
mov dx,0
mov bx,100
div bx
cmp dx,0
je next xor dx,dx
mov ax,w
mov bx,4
div bx
cmp dx,0
je lab2
jmp lab1
next:
xor dx,dx
mov ax,w
mov bx,400
div bx
cmp dx,0
je lab2
jmp lab1
lab1: clc
jmp lab3
lab2: stc
lab3: pop dx
pop cx
pop bx
ret
ifyears endp
code ends
end start
c++判断是否是闰年代码如下:
#define _CRT_SECURE_NO_WARNINGS 1
#include<stdioh>
#include<stdlibh>
int IsLeapYear(int y)
{
return (y%100!=0&&y%4==0)||(y%400 == 0);
}
int main()
{
int year = 0;
printf("请输入需要查询的年份:>");
scanf("%d", &year);
int check = IsLeapYear(year);
if (0 == check)
printf("%d年不是闰年\n",year);
else
printf("%d年是闰年\n",year);
system("pause");
return 0;
}
扩展资料:
C++是C语言的继承,它既可以进行C语言的过程化程序设计,又可以进行以抽象数据类型为特点的基于对象的程序设计,还可以进行以继承和多态为特点的面向对象的程序设计。
C++擅长面向对象程序设计的同时,还可以进行基于过程的程序设计,因而C++就适应的问题规模而论,大小由之。
C++不仅拥有计算机高效运行的实用性特征,同时还致力于提高大规模程序的编程质量与程序设计语言的问题描述能力。
语言特点:
1、支持数据封装和数据隐藏;
2、支持继承和重用;
3、支持多态性。
参考资料:
百度百科-C++
1:你要清楚什么样的年份才是闰年(能被4整除且不能被100整除或者能被400整除的,参考>
#include <stdioh>
int check( int year)
{
if((year %4 == 0 && year % 100 > 0)|| year % 400 == 0)
return 1;
return 0;
}
int main()
{
int y;
printf("输入年份:");
scanf("%d",&y);
printf(check(y)"是闰年":"不是闰年");
return 0;
}
闰年就是该年份数能被4整除且不能被100整除或者能被400整除的就是闰年。
参考代码:
#include<stdioh>int main()
{
int n;
scanf("%d",&n);
if((n%4==0&&n%100!=0)||n%400==0) //判断条件
printf("%d是闰年!\n",n);
else
printf("%d不是闰年!\n",n);
return 0;
}
/
运行结果:
2014
2014不是闰年!
/
判断闰年有个算法,老百姓常说的, 四年一闰,百年不闰,四百年再闰。用C写了一个仅供参考:
#include
int main(void)
{
int year;
year=2000;
for(year=2000;year if((year%4==0&&year%100!=0)||(year%400==0)){
printf("%d\n",year);
}
}
return 0;
}
以上就是关于1.用Java语言编写一个程序,判断一个年份是否是闰年。全部的内容,包括:1.用Java语言编写一个程序,判断一个年份是否是闰年。、求汇编程序,给一个年份,判断该年是不是闰年、C++判断闰年等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)