单元测试

1.源代码:

  1 package one;
  2 
  3 import java.util.Scanner;
  4 
  5 public class SecondCalculate
  6 {
  7     public static void main(String args[])
  8     {
  9         @SuppressWarnings("resource")
 10         Scanner in=new Scanner(System.in);
 11 //---------------要求规定---------
 12         System.out.print("请输入打印运算式的数量:");
 13         int number=in.nextInt();
 14         
 15         char symbollist[]=new char[4];
 16         System.out.print("①请问是否有乘除法(1:是 2:不是):");
 17         int flag=in.nextInt();
 18         if(flag==1)
 19         {
 20             symbollist[0]='+';
 21             symbollist[1]='-';
 22             symbollist[2]='*';
 23             symbollist[3]='/';
 24         }
 25         else
 26         {
 27             symbollist[0]='+';
 28             symbollist[1]='-';
 29             symbollist[2]='+';
 30             symbollist[3]='-';
 31         }
 32         
 33         System.out.print("②请问是否有括号(1:是 2:不是):");
 34         int boolbracket=in.nextInt();
 35         
 36         System.out.print("③请问需要数据范围是(先输入下界,后输入上界):");
 37         double min=in.nextDouble();
 38         double max=in.nextDouble();
 39         
 40         System.out.print("④请问加减有无负数(1:有 2.无):");
 41         int negative=in.nextInt();
 42         if(negative==2)
 43         {
 44             if(min<0)
 45             {
 46                 min=0;
 47             }
 48         }
 49         
 50         if(flag==1)
 51         {
 52             System.out.print("⑤除法有无余数(1:是 2:不是):");
 53             int boolremainder=in.nextInt();
 54         }
 55         System.out.println();
 56         
 57         
 58         int space[][]=new int [number][10];
 59         int symtime,time;
 60         
 61         for(time=0;time<number;)
 62         {
 63             for(int i=0;i<10;i++)
 64             {
 65                 space[time][i]=(int)(Math.random()*(max-min+1)+min);
 66             }
 67             //判断所生成的数组中是否和之前产生的数组完全一致
 68             int flag1=1;
 69             for(int i=0;i<time;i++)
 70             {
 71                 for(int j=0;j<10;j++)
 72                 {
 73                     if(space[time][j]==space[i][j])
 74                     {
 75                         flag1=0;
 76                     }
 77                     else
 78                     {
 79                         flag1=1;
 80                     }
 81                 }
 82             }
 83             //随机判断下面要产生的式子是由几个数字构成的
 84             int s=(int)(Math.random()*(10-2+1)+2);
 85             
 86             if(flag1==1)
 87             {
 88                 if(boolbracket==1&&s!=2)
 89                 {
 90                     System.out.print("(");
 91                 }
 92                 
 93                 //运算符数组
 94                 char p[]=new char [s-1];
 95                 for(int i=0;i<s-1;i++)
 96                 {
 97                     symtime=(int)(Math.random()*(3-0+1)+0);
 98                     p[i]=symbollist[symtime];
 99                 }
100                 
101                 System.out.print(space[time][0]);
102                 
103                 for(int i=1;i<s;i++)
104                 {
105                     System.out.print(p[i-1]);
106                     if(space[time][i]<0)
107                     {
108                         System.out.print("("+space[time][i]+")");
109                     }
110                     else
111                     {
112                         System.out.print(space[time][i]);
113                     }
114                     
115                     if(boolbracket==1&&i==(s-1)/2&&s!=2)
116                     {
117                         System.out.print(")");
118                     }
119                 }
120                 System.out.println("=");
121                 time++;
122             }
123         }
124     }
125 }

2.代码测试:

原文地址:https://www.cnblogs.com/Daddy/p/5323893.html