环境:eclipse
1.求年份是闰年还是平年 重点 判断出 闰年 能被4 和400整除 不能被100整除
public static void main(String[] args) {
/*
* 3、键盘录入任意年份,判断它是不是闰年
* 能同时被4 和100整除
*/
System.out.println("请输入要判断的年份");
Scanner sa = new Scanner(System.in);
int n1 = sa.nextInt();
if ((n1 % 4 == 0 && n1 % 100 !=0) || n1 % 400 == 0) {
System.out.println(n1+"年是闰年");
}else{
System.out.println(n1+"年是平年");
}
}
2.控制台输入一个大写字母 输出对应的小写字母
注意:复制看效果的时候要记得都要放在main 方法中才能生效
toLowerCase:将大写字母转换成为小写
大小写还不太明白的上面有个链接,他也写的不错 看看他的
/*
* 输入一个大写字母,输出对应的小写字母
*/
//方法一:
System.out.println("请输入你要输入的大写字母");
Scanner scan = new Scanner(System.in);
String st = scan.next();
String lc = st.toLowerCase();
System.out.println(lc);
//方法二:
char ca = st.charAt(0);
ca +=32;
System.out.println(ca);
3.看图
/*
* 某超市进行促销活动,规则如下:如果是本超市的会员,购买的商品总价在100元以上,
* 八折优惠;如果是会员但商品总价在100元以下9折优惠;如果非会员商品总价在100以上九折优惠;
* 如果非会员商品总价在100以下,不打折;询问用户是否是会员(0和1代表),和商品的总价,
* 根据答案判断折扣额以及最终要付款的金额
*/
Scanner sc = new Scanner(System.in);
System.out.println("判断你是否是会员");
int n1 = sc.nextInt();
System.out.println("请输入您的购物金额");
// long money = sc.nextLong();
double money = sc.nextDouble();
if (n1 == 0){
if(money >= 100){
System.out.println("尊敬的会员您好,您购买的商品总价在100元以上,可以享受八折优惠\n"+"您需要支付的金额是"+(money*0.8));
}else if(money <100){
System.out.println("尊敬的会员您好,您购买的商品总价在100元以下,可以享受九折优惠\n"+"您需要支付的金额是"+(money * 0.9));
}
}else{
if (money >= 100) {
System.out.println("尊敬的用户您好,您购买的商品总价在100元以上,可以享受九折优惠\n"+"您需要支付的金额是"+(money*0.9));
}else if (money <100) {
System.out.println("尊敬的用户您好,您购买的商品总价在100元以下,不可以享受打折优惠\n"+"您需要支付的金额是"+money);
}
}
}
4.求 输入的三位数 四位数 五位数的水仙花数
int mun = (i * i * i + j * j * j + k * k * k); 这行代码为什么不用 i^3代替是因为这在程序中不认为是立方
而是按位异或 我在这就卡了好久
我当初是这么写的
int mun =((n1/100)^3+((n1/10%10)^3)+(n1%10)^3);
不可取
/*
* 从键盘输入一个3位至5位的数,判断用户输入的数是不是水仙花数。
* 假如用户输入的是3位数:123,则如果1的3次方+2的3次方+3的3次方等于123,则说明123是水仙花如。
* 如果输入的是4位数,例如:3456,则3的4次方+4的4次房+5的4次方+6的4次方等于3456则为水仙花数,5位数同理。
*/
Scanner scanner = new Scanner(System.in);
System.out.println("请输入你要判断的数");
int n1 = scanner.nextInt();
if (n1>99 && n1 <=999 ){
int i = n1 /100;
int j = n1 /10%10;
int k = n1 %10;
int mun = (i * i * i + j * j * j + k * k * k);
if (mun == n1) {
System.out.println("数字"+n1+"是水仙花数");
}else {
System.out.println(n1+"不是水仙花数");
}
}else if (n1 >999 && n1 <= 9999) {
int d = n1 /1000;
int i = n1 /100%10;
int j = n1 /10%10;
int k = n1 %10;
int mun2 = (d * d * d * d+i * i * i * i + j * j * j *j + k * k * k * k);
if (mun2 == n1) {
System.out.println("数字"+n1+"是水仙花数");
}else {
System.out.println(n1+"不是水仙花数");
}
}else if (n1 >9999 && n1 <=99999) {
int s = n1 /10000;
int d = n1 /1000%10;
int i = n1 /100%10;
int j = n1 /10%10;
int k = n1 %10;
int mun3 = (s * s * s * s * s +d * d * d * d * d+i * i * i * i * i + j * j * j * j * j + k * k * k * k * k);
if (mun3 == n1) {
System.out.println("数字"+n1+"是水仙花数");
}else {
System.out.println(n1+"不是水仙花数");
}
}else {
System.out.println("你输入的数字不符合要求,请重新输入");
}
5.
/*
* 判断某个变量里存放的字母是不是元音字母
*/
Scanner sc = new Scanner(System.in);
System.out.println("请输入字母:");
char letter = sc.next().charAt(0);
//isLetter 判断指定字符是否为字母 但是 也会把中文判断为字母 需要结合Character来用---Character.isLetter('a')
if (letter == 'a' || letter == 'e'|| letter == 'i'|| letter == 'o'|| letter == 'u'|| letter == 'y'|| letter == 'w') {
System.out.println(letter+"是元音字母");
} else {
System.out.println(letter+"不是元音字母");
}