前面自己提到一个想法:做一个自动化中文编程系统
然后经思考过后,觉得自己应该先设计测试用例,不过自己有很好的测试来源:教材和其他题库。
下面是我从教材上扒过来的。
1、输入 预期输出 程序实际输出
2、编写程序,在屏幕上输出”hello world!”的字符串。
3、请从键盘输入一个角度的弧度值x,计算该角度的余弦值,将计算结果输出到屏幕。
4、设计一个加法器,能实现两数的相加。通过调用该加法器,计算两数的和。
5、编写程序,计算两复数的差。程序要求从键盘输入两个复数的实部和虚部的值,然后计算第1个复数与第2个的复数的差。
6、编写程序,在屏幕上输出由星号(*)组成的菱形图案。
7、简单的数学计算。编写程序,计算3个数的和的平均值。
8、输出a,b,c三个变量中的最小值。
9、输入3个整数给a,b,c,把b的值赋给a,c的值赋给b,a值赋给c,交换后输出a,b,c的值。
10、输入两个整型数x,y,求x,y之和、差、积、x/y的商和余数。
11、按下列要求编写程序,对变量a,b,c进行unsigned int型说明,将65赋给a,66赋给b,67赋给c,对变量a,b,c用%c格式输出显示。
12、输入三角形三条边的边长,求三角形的面积。
13、已经半径r=3.4cm,求圆的周长和面积(保留2位小数)。
14、编写变量b取35.425,c取52.954,将b+c变为整数赋给a1,对b、c取整数后求其和的程序。
15、编写a为100,b为50,若a>b成立将a赋予c,否则将b赋予c。同时,若a成立将a赋予d,否则将b^2赋予d的程序。
16、输入3个字符型数据,将其转换成相应的整数后,求它们平均值并输出。
17、设a的值为12,b的值为18,c的值为12,求a&&b,a||b,a&&c计算结果的值。
18、火车做直接匀加速运动,初速度为0,加速度为0.19m/s^2,求30s时火车的速度(速度以km/h为单位)。
19、一辆汽车以15m/s的速度先开出10min后另一辆汽车以20m/s的速度追赶,问多少分钟可以追上?
20、要求从键盘输入3个数,找出其中最小的那个数,将其输出到屏幕。请给出解决这个问题的算法。
21、从键盘输出两个变量的值a、b,请按输入值从小到大的顺序将这两个变量的值输出到屏幕。请写出这个问题的算法描述。
22、几何级数求和:sum=1+2+3+4+5+...+(n-1)+n。请写出该问题的算法。
23、写一程序,输入年号,判断是否为闰年。
24、输入百分制成绩s,按五级分制输出。
当s>=90时,输出A;
当80<=s<90时,输出B;
当70<=s<80时,输出C;
当60<=s<70时,输出D;
当s<=60时,输出E。
25、从键盘输入3个整数a,b,c,输出其中最大的数。
26、从键盘输入1个整数,判断这个数是否是素数。
27、编程判断输入整数x的正负性和奇偶性。
28、用整数0~6依次表示星期日至星期六。由键盘输入一个整数,输出对应的英文表示,如果输入的整数在0~6之外,输出“数据错误”信息。
29、从键盘输入4个整数,分别存入整数变量a,b,c,d中,并按从大到小的顺序显示出来。
30、从键盘任意输入两个实数a和b,要求a的值总是小于或等于b的值,然后输出这两个数a和b的值。
31、从键盘输入一个整数,求该数的绝对值。
32、设计一个猜数游戏,由计算机产生一个随机数magic,从键盘输入一个数guess,若输入的数guess的大小等于随机数magic,则输出“Gratulation!You Are Right.”。否则,输出“sorry!You Are Wrong.”。
33、从键盘输入+、-、*、/中的任一个,输出对应的英文单词:plus、minus、multiply、divide,若输入的不是这4个字符中的任一个,则输出“sorry You Are Wrong”。
34、编写程序,通过输入x的值,计算阶跃函数y的值。y=-1(x<0),y=0(x=0),y=1(x>0)。
35、从键盘输入一个字符,判断其是否为a(可代表abort)或r(可代表retry)或f(可代表fail),并输出相应信息(输入时不区分大小写)。
36、求解一元二次方程ax^2+bx+c=0的根(a不等于号0),a、b、c均为实数,其值由键盘输入。
37、这个很难。有非文本。
38、这个很难。有非文本。
39、判断a、b、c能否构成三角形,若能,输出YES,否则输出NO。
40、输入4个数a、b、c、d,要求按从大到小输出。(P86)
这个测试用例还没有收集完整,至少要收集上千个以上。然后再做预期输出。写测试代码和实现代码等。