最下方附带集合的文氏图,和集合描述解析,如有数学及表述更好的兄弟,可不吝赐教,万分感激。
#include <stdio.h>
#include <math.h>
#define EPS 1e-1
int isTriangle(float a, float b, float c);
int isIsoscelesTriangle(float a, float b, float c);
int isRightAngledTriangle(float a, float b, float c);
int isRegularTriangle(float a, float b, float c);
int main()
{
/*
程序测试
1、包含所有可能的测试,称为穷尽测试。实际中是不可能的,也是不现实的,
所以程序只能证明程序有错,而不能证明程序无错。
2、程序测试的目的就是为了尽可能多地发现程序中的错误,
成功的测试是在与发现迄今为止尚未发现的错误。
3、如果程序中没有发现任何错误,则可能是测试不充分,
没有发现潜在的错误,而不能证明程序无错。
因此,程序测试能提供程序质量,但提高程序质量不能完全依赖于程序测试。
4、由于进行程序测试需要运行程序,而运行程序需要数据,为测试设计的数据称为测试用例。
5、如果程序测试人员对被测试程序的内部结构很熟悉,即被测程序的内部结构和流向是可见的,
或者说已知的,那么可按照程序的内部逻辑来设计测试用例,检验程序中的每条通路是否都能
按预定要求工作。这种测试方法称为白盒测试,或玻璃盒测试,也称为结构测试。
这种测试方法选取用例的出发点是:尽量让测试数据覆盖程序中的每条语句,
每个分支和每个判断条件,并减少重复覆盖。这种方法主要用于测试的早期。
6、把系统看成一个黑盒子,不考虑程序内部的逻辑结构和处理过程,只根据需求规格说明书的
要求,设计测试用例,检查程序的功能是否符合它的功能说明,这种测试方法称为黑盒测试,
也称为功能测试。
黑盒测试的实质是对程序功能的覆盖性测试,因此可以从程序拟实行的功能出发选取测试用例。
这种测试方法适用于测试的后期。
7、在实际应用中,通常将白盒测试和黑盒测试结合使用,例如,选择有限数量的重要路径进行
白盒测试,对重要的功能需求进行黑盒测试。
*/
/*
编程输入三角形的三条边a、b、c,判断他们能否构成三角形。若能构成三角形,指出是何种三角形;
等腰三角形,直角三角形,还是一般三角形?
*/
float a, b, c;
printf("input a, b ,c:");
scanf(