Java基本语法练习题

float f=3.4;是否正确,表达式15/2*2的值是多少

答案:不正确,float f = 3.4F;

答案:14

Java的基本数据类型有哪些?String是基本数据类型吗?

基本数据类型有:byte,short,int,long,float,double,char,boolean

String是引用数据类型,不是基本数据类型

今天是周二,100天以后是周几?

//今天是周二,100天以后是周几?

public class TestExer2 {

         public static void main(String[] args) {

                  int week = 2;

                  week += 100;

                  week = week % 7;

                  System.out.println("100天后星期" + week);

         }

}

比较 +  与  +=

short s1 = 1; s1 = s1 + 1;有什么错?

short s1 = 1; s1 += 1;有什么错

答:short s1 = 1; s1 = s1 + 1; (s1+1运算结果是int型,需要强制转换类型)

short s1 = 1; s1 += 1;(可以正确编译)

编写程序,从键盘接收整数参数。如果该数为1-7,打印对应的星期值,否则打印“非法参数”。

import java.util.Scanner;

class TestSwitch{

         public static void main(String[] args){

                  Scanner input = new Scanner(System.in);

                  System.out.print("请输入星期值:");

                  int week = input.nextInt();

                 

                  switch(week){

                          case 1:

                                   System.out.println("星期一:Monday");

                                   break;

                          case 2:

                                   System.out.println("星期二:Tuesday");

                                   break;

                          case 3:

                                   System.out.println("星期三:Wednesday");

                                   break;

                          case 4:

                                   System.out.println("星期四:Thursday");

                                   break;

                          case 5:

                                   System.out.println("星期五:Friday");

                                   break;

                          case 6:

                                   System.out.println("星期六:Saturday");

                                   break;

                          case 7:

                                   System.out.println("星期天:Sunday");

                                   break;

                          default:

                                   System.out.println("非法星期值");

                                   break;

                  }

                 

         }

}

编写程序:从键盘上读入一个学生成绩,存放在变量score中,根据score的值输出其对应的成绩等级:

score>=90           等级:A

70=<score<90        等级:B

60=<score<70        等级:C

score<60            等级:D

建议使用if...else

import java.util.Scanner;

class Exam1{

         public static void main(String[] args){

                  Scanner input = new Scanner(System.in);

                  System.out.print("请输入学生的成绩:");

                  int score = input.nextInt();

                  if(score>=90){

                          System.out.println("等级:A");

                  }else if(score>=70){

                          System.out.println("等级:B");

                  }else if(score>=60){

                          System.out.println("等级:C");

                  }else{

                          System.out.println("等级:D");

                  }

                 

                  /*

                  if(score>=90){

                          System.out.println("等级:A");

                  }else if(score<90 && score>=70){

                          System.out.println("等级:B");

                  }else if(score<70 && score>=60){

                          System.out.println("等级:C");

                  }else{

                          System.out.println("等级:D");

                  }

                  */

         }

}

彩票游戏

假设你想开发一个玩彩票的游戏,程序随机地产生一个两位数的彩票,提示用户输入一个两位数,然后按照下面的规则判定用户是否能赢。

1)如果用户输入的数匹配彩票的实际顺序,奖金10 000美元。

2)如果用户输入的所有数字匹配彩票的所有数字,但顺序不一致,奖金 3 000美元。

3)如果用户输入的一个数字仅满足顺序情况下匹配彩票的一个数字,奖金1 000美元。

4)如果用户输入的一个数字仅满足非顺序情况下匹配彩票的一个数字,奖金500美元。

5)如果用户输入的数字没有匹配任何一个数字,则彩票作废。

提示:使用Math.random() 产生随机数

Math.random() 产生[0,1)范围的随机值

Math.random() * 90:[0,90)

Math.random() * 90 + 10:[10,100) 即得到  [10,99]

使用(int)(Math.random() * 90  + 10)产生一个两位数的随机数。

import java.util.Scanner;

class TestCaiPiao{

         public static void main(String[] args){

                  //1、随机产生一个两位数

                  //System.out.println(Math.random());//产生[0,1)

                  int number = (int)(Math.random()*90 + 10);//得到[10,99],即[10,100)

                  //System.out.println(number);

                 

                  int numberShi = number/10;

                  int numberGe = number%10;

                 

                  //2、用户输入一个两位数

                  Scanner input = new Scanner(System.in);

                  System.out.print("请输入一个两位数:");

                  int guess = input.nextInt();

                 

                  int guessShi = guess/10;

                  int guessGe = guess%10;

                 

                  if(number == guess){

                          System.out.println("奖金10 000美元");

                  }else if(numberShi == guessGe && numberGe == guessShi){

                          System.out.println("奖金3 000美元");

                  }else if(numberShi==guessShi || numberGe == guessGe){

                          System.out.println("奖金1 000美元");

                  }else if(numberShi==guessGe || numberGe == guessShi){

                          System.out.println("奖金500美元");

                  }else{

                          System.out.println("没中奖");

                  }

                 

                  System.out.println("中奖号码是:" + number);

         }

}

打印九九乘法表

public static void main(String[] args) {

         for(int i =1;i<=9;i++){

             for(int j=1;j<=i;j++){

                  System.out.print(j+"*"+i+"="+(i*j) + "\t");

             }

             System.out.println();

         }

    }

打印一个实心菱形

public class TestFor1 {
   
public static void main(String[] args){
       
//打印实心菱形
       
int size = 17;
        int
starNum = size/2+1;//开始
       
int endNum = size/2+1;//结束
       
//引入一个变量的开关
       
boolean flag = true;
        for
(int j = 1;j<= size;j++){

           
for(int i = 1; i <= size;i++){
               
if(i >= starNum && i <= endNum){
                    System.
out.print("*");
               
}else {
                    System.
out.print(" ");
               
}
            }
            System.
out.println();

            if
(endNum == size){
                flag =
false;
           
}
           
if(flag){
                starNum--
;
               
endNum++;
           
}else {
                starNum++
;
               
endNum--;
           
}
        }

}

在JAVA中,如何跳出当前的多重嵌套循环?

答:用break或return 的方式。

  1. 标识符的命名规则有哪些? à不遵守,编译不通过。

答:

由26个英文字母大小写,0-9,_或$组成

不能以数字开头

Java严格区分大小写,长度无限制

标识符不能包含空格

不可以使用关键字和保留字,但能包含关键字和保留字

  1. 标识符的命名规范有哪些?à不遵守,编译运行都可以通过

答:

包名:多单词组成时,所有字母都小写:xxxyyyzzz

类名、接口名:多单词组成时,所有单词的首字母大写:XxxYyyZzz

变量名、方法名:多单词组成时,第一个单词首字母小写,第二个单词开始首字母大写:xxxYyyZzz

常量名:所有字母都大写,多单词时每个单词用下划线隔开:XXX_YYY_ZZZ

  1. Java变量按照数据类型怎么划分?并指出Java的基本数据类型有哪8种,并指出各自占用的内存空间大小

答:

Java的数据类型分为:基本数据类型、引用数据类型

byte、short、int、long、float、double、char、boolean

  1. 说明基本数据类型变量之间自动类型提升的运算规则。

自动类型转换:容量小的类型自动转换为容量大的数据类型(隐式转换)。

  1. 说明基本数据类型变量之间强制类型转换的使用规则和强转可能出现的问题。

答:

强制类型转换:将容量大的数据类型转换为容量小的数据类型。使用时要加上强制转换符:(),但可能造成精度降低或溢出,格外要注意

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值