码迷,mamicode.com
首页 > 其他好文 > 详细

课堂测试1

时间:2019-09-21 21:15:52      阅读:85      评论:0      收藏:0      [点我收藏+]

标签:system   目的   int   random   while   计算   class   img   地址   

一、课堂测试

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)计算机内部使用的二进制小数无法精确表达我们所输入的十进制数。

技术图片

 

课堂测试1

标签:system   目的   int   random   while   计算   class   img   地址   

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

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!