白盒测试(基础16-20)

题 16:根据下列流程图编写程序实现相应分析处理并显示结果,并设计测
试数据进行语句覆盖测试。输入数据打印出“username:”、“password:”。
输出文字内容。
import java.util.Scanner;
public class demo16{

	public static void main(String [] args){
		Scanner out =new Scanner(System.in);
		System.out.println("请输入用户名 :");
		String username =out.nextLine();
		System.out.println("请输入密码:");
		String password=out.nextLine();
	
		if(username.isEmpty()&&password.isEmpty()){
			System.out.println("用户名或密码不能为空");
		}else if(username.equals("admin")  && password.equals("123")){
			System.out.println("登陆成功");
		}else if(!username.equals("admin")  && password.equals("123")){
			System.out.println("请输入正确的用户名");
		}else if(username.equals("admin")  && !password.equals("123")){
			System.out.println("请输入正确的密码");
		}else if(!username.equals("admin")  && !password.equals("123")){
			System.out.println("请输入正确的用户名与密码");
			}	
	
		}
	
	}
题 17:根据输入的年份和月份判断月份的天数,并设计测试数据进行语句
覆盖测试。若月份不在有效范围之内,应提示:“月份输入不正确。”。月份不
为 2 月,根据输入月份输出对应的月份天数。月份为 2 月,根据年份判断如为闰
年,输出 2 月份正确天数;不为闰年输出 2 月份天数。输入数据打印出“输入年:”、
“输入月:”;输出内容格式:“year 年 month 月份的天数是 days 天。”year、
month 为输入的值,days 为判断得到的天数值。其中变量 year、month 均须为正
整数。
import java.util.Scanner;
public class demo17{
	public static void main(String[] args){
		Scanner sc = new Scanner(System.in);
		System.out.println("输入年:");
		int year = sc.nextInt();
		System.out.println("输入月:");
		int month = sc.nextInt();
		int days;
		if(year>0){
			if(month>0&&month<=12){
				if(month==1||month==3||month==5||month==7||month==8||month==10||month==12){
					days=31;
				}else if(month==2){
					if((year%4==0&&year%100!=0)||year%400==0){
						days=29;
					}else{
						days=28;
					}
				}else{
					days=30;
				}
				System.out.println(year+"年"+month+"月份的天数是"+days+"天");
			}else{
				System.out.println("输入的月份不正确");
			}
		}else{
			System.out.println("输入的年份不正确");
		}
	}
}
题 18:根据输入的三条边值判断能组成何种三角形,并设计测试数据进行
判定覆盖测试。三条边为变量 a、b、c,范围为 1≤边值≤10,不在范围内,提
示“输入边值不在范围内,请重新输入”。不满足任意两边之和必须大于第三边,
提示“输入边值不能组成三角形”。输入边值能组成三角形,只有 2 条边相同,
显示“能组成等腰三角形”;三条边相等,显示“能组成等边三角形”;边值不
满足特殊三角形显示“能组成普通三角形”。
import java.util.Scanner;
public class demo18{
	public static void main(String[] args){
		Scanner sc = new Scanner(System.in);
		System.out.println("输入a的值");
		int a = sc.nextInt();
		System.out.println("输入b的值");
		int b = sc.nextInt();
		System.out.println("输入c的值");
		int c = sc.nextInt();
		if((1<=a&&a<=10)&&(1<=b&&b<=10)&&(1<=c&&c<=10)){
			if(a+b>c&&a+c>b&&b+c>a){
				if(a==b&&b==c){
					System.out.println("能组成等边三角形");
				} 
				if(a==b||a==c||b==c){
					System.out.println("能组成等腰三角形");
				}else{
					System.out.println("能组成普通三角形");
				}
			}else{
				System.out.println("输入边值不能组成三角形");
			}
		}else{
			System.out.println("输入边值不在范围内,请重新输入");
		}
	}
}
题 19:根据下列流程图编写程序实现相应分析处理并显示结果,并设计最
少的测试数据进行判定条件覆盖测试。输入数据打印出“输入 x 值:”、“输入
y 值:”。输出文字“a 的值:”和 a 的值;输出文字“b 的值:”和 b 的值;输
出文字“c 的值:”和 c 的值;输出文字“d 的值:”和 d 的值;其中变量 x、y
均须为整型。
import java.util.Scanner;
public class demo19{
	public static void main(){
		Scanner sc = new Scanner(System.in);
		System.out.println("输入x值:");
		int x = sc.nextInt();
		System.out.println("输入y值:");
		int y = sc.nextInt();
		if(x>9&&y>4){
			if(x>20||y>10){
				System.out.println("c的值:"+Math.sin(x+y));
			}else{
				System.out.println("d的值:"+Math.pow((x+y),5));
			}
		}else{
			if(x>=90||y>=90){
				System.out.println("a的值:"+Math.pow(x,y));
			}else{
				System.out.println("b的值:"+y+x);
			}
		}
	}
}
题 20:根据下列流程图编写程序实现相应分析处理并显示结果,并设计最
少的测试数据进行语句覆盖测试。输入数据打印出“输入 x 值:”、“输入 y
值:”。输出文字“a=x”(x 为 2、3 或 4);其中变量 x、y 均须为整型。
import java.util.Scanner;
public class demo20{
	public static void main(String[] args){
		Scanner sc = new Scanner(System.in);
		System.out.println("输入x值:");
		int x = sc.nextInt();
		System.out.println("输入y值:");
		int y = sc.nextInt();
		int z;
		if(x>=80&&y>=60){
			if(x>=90||y>=90){

			}else{
				z=2;
				System.out.println("a="+z);
			}
		}else{
			if(x<=70||y<=70){
				z=3;
				System.out.println("a="+z);
			}else{
				z=4;
				System.out.println("a="+z);
			}
		}
	}
}

有问题的话,欢迎到博主的评论区留言,博主会在看到的第一瞬间给你们答复。也可以加博主的微信,大家一起讨论相关软件测试方面的问题

  • 4
    点赞
  • 5
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

禹鈞

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值