对案例问题代码2.1可以分解成4个部分。(1)增加一个打印函数void printHeader(),比如简单说明本程序的作用和使用。(2)函数void generateEquations(),产生加法或减法算式的符号串并存入一个数组。(3)输出习题的函数void printExercise(),它接收generateEquations的输出,按照要求打印输出所有的算式。(4)输出习题中每个算式的计算结果void printCalculations()。程序的实现方式有很多,下面的代码给出了主程序及部分模块代码。它定义了两个非局部变量,分别是存放算式符号串的数组和每个算式计算结果的数组。public class BinaryOperation_01 {// 存放算术符号串的数组,非局部变量 static String [] exercises = new String[50];// 存放算术题结果的数组,非局部变量 static short [] results = new short[50]; public static void printHeader(){…… } public static void generateEquations(){ …… exercises[i]=""+m+o+n+"="; results[i]=v; } } public static void printExercise(){ for (int i=0;i< exercises.length; i++){ System.out.println(""+(i+1)+":\t"+e[i]); } } public static void printCalculations(){ for (int i=0;i< results.length; i++){ System.out.println(""+(i+1)+":\t"+r[i]); } } public static void main(String[] args) { printHeader(); generateEquations(); printExercise(); printCalculations(); }}从模块化设计理论分析,如果函数printExercise()修改为接收一个字符串数组,即printExercise(String[]),那么它和generateEquations()出现在主程序中的耦合性,属于()。