一、课堂测试
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("\n");}
else if((f==1)&&(num1-num2>=0)){
System.out.print(i+"."+num1+"-"+num2+"="+" ");
i++;
if((i-1)%h==0)
System.out.print("\n");}
else if((f==2)&&(num1*num2<101)){
System.out.print(i+"."+num1+"*"+num2+"="+" ");
i++;
if((i-1)%h==0)
System.out.print("\n");}
else if((f==3)&&(num1%num2==0)){
System.out.print(i+"."+num1+"/"+num2+"="+" ");
i++;
if((i-1)%h==0)
System.out.print("\n");}
}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