【答案解析】(1)添加语句:int a,b;
(2)添加语句:CMyFormula(int a=1,int b=1)
(3)添加语句:cout
<
<
a
<
<
"*"
<
<
b
<
<
"=_"
<
<
a*b;
(4)将“for(int j=1; j++)”补充完整为:for(int j=1;j<=i j++)
答案考生文件夹
[解析] 程序当中定义了类CMyFormula,含有a和b两个成员变量,一个构造函数,改变成员变量a和b的值得set(int x,int y)函数,打印a和b的乘积的display()函数。在主函数中定义了一个CMyFormula对象,然后不断改变该对象的a和b的值,然后调用display()显示,如此完成打印9×9的乘法口诀。
(1)第1个标识下完成CMyFormula类的私有变量a、b的定义,从函数set(int x,int y)的参数类型可以看出a和b均为int型变量,故第1个标识下应添加“int a,b;”。
(2)第2个标识下添加构造函数声明,完成对变量a、b赋值,该构造有两个参数a和b,且a和b缺省值为1,因此第2个标识下应添加“CMyFormula(int a=1,int b=1)”。
(3)打印函数display()在屏幕上打印出“a*b=c”格式的一个乘法算式,因此第3个标识下应添加“cout
<
<
a
<
<
"*"
<
<
b
<
<
"="
<
<
a*b;"0
(4)观察可知第4个标识下的for循环是死循环,j没有判断退出条件,会一直循环下去得不到想到的9×9的口诀表,外层循环变量i从1开始变化至9,循环9次,内部循环变量j应该从1变化到i,输出一行,j<=i,这样保证输出的是倒9×9口诀,因此第4个标识下应改为“for(int j=1;j<=i;j++)”。