课堂测试1

一、课堂测试

1,题目:课堂测试:像二柱子那样,花二十分钟写一个能自动生成30道小学四则运算题目的 “软件”

      要求:(1)题目避免重复;

                   (2)可定制(数量/打印方式)

2、思路

        1、使用三个随机数来确定不同的数字,其中两个是为了除数和被除数不同,另一个随机数是为了确定不同的算术符号。

  2、通过do{}while循环来输出n个不同的题。

  3、使用while循环题目是否重复,重复则跳出do{}while循环;反之则进行下一步。

  4、通过if和else if来确定不同的算术符号。

3、代码

import java.util.Scanner;
public class comp{
static Scanner sc= new Scanner(System.in);
public static void main(String[] args) {
int i=1;
int b=0;
int j=sc.nextInt();
int h=sc.nextInt();
int a[][]=new int[1000][1000];
do{
int num1=(int)(Math.random()*100);
int num2=(int)(Math.random()*100);
int f=(num1)%4;
while(b<j){
if(a[i][i]==a[b][b])
break;
else b++;}
if((f==0)&&(num1+num2<101)){
System.out.print(i+"."+num1+"+"+num2+"="+" ");
i++;
if((i-1)%h==0)
System.out.print(" ");}
else if((f==1)&&(num1-num2>=0)){
System.out.print(i+"."+num1+"-"+num2+"="+" ");
i++;
if((i-1)%h==0)
System.out.print(" ");}
else if((f==2)&&(num1*num2<101)){
System.out.print(i+"."+num1+"*"+num2+"="+" ");
i++;
if((i-1)%h==0)
System.out.print(" ");}
else if((f==3)&&(num1%num2==0)){
System.out.print(i+"."+num1+"/"+num2+"="+" ");
i++;
if((i-1)%h==0)
System.out.print(" ");}
}while(i<j+1);}}

4、运行测试

 二、动手动脑

1、仔细阅读示例:EnumTest.java,运行它,分析运行结果?

结论:

(1)枚举类型可以只用=号赋值

(2)从字符串中转换的枚举变量中,实例化的对象的元素赋给新的变量和原变量的地址相同。

2、

结论:

(1)如果前面是String类型,则相加后的结果也自动转换为String类型。

 

3、同名屏蔽

结论:

(1)先作用作用域小的,然后再是大的。

4、精度缺失

结论:

(1)计算机内部使用的二进制小数无法精确表达我们所输入的十进制数。

原文地址:https://www.cnblogs.com/dg1137/p/11564512.html