和for循环语句,实现程序源代码的分析。Р图1 主函数流程图Р(2)子程序StrEmpty()函数的设计Р 此为串的基本操作Р 检测是否为空串,若为空串,返回TRUE,若不是空串,返回FALSE。Р图2 StrEmpty()函数流程图Р (3)子程序Find()函数的设计Р 查看S1中是否有值为S2的子串,若有则返回第一个子串的位置,若无则返回-1。该函数主要是运用if语句和while语句,来实现功能。Р图3 Find()函数流程图Р (4)子程序HaveLine()函数的设计Р 该函数所要实现的功能是读取文件中的一行字符。若是一行的结尾则表示取完了一行,返回主函数。Р图4 HaveLine()函数流程图Р(5)子程序IgnoreB()函数的设计Р 该函数所要实现的功能是忽略一行字符开头的空格和tab,返回截断后上的串指针。Р图5 lgnoreB()函数流程图Р(6)()函数的设计Р 该函数所要实现的功能是判断一行字符是不是注释。若posc == 0则表示此行仅有注释,无代码。Р图6 ()函数流程图Р(7)子程序IsBlank()函数的设计Р 该函数所要实现的功能是判断一行字符是不是空白。如果是,返回TRUE;如果不是,返回FALSE。Р图7 IsBlamk()函数流程图Р(8)子程序printR()函数的设计Р 该函数所要实现的功能是按代码级别判定标准输出分析结果。先根据课题给定的标准定义A、B、C、D四个阶段,A为最优阶段,D为最差阶段。再分别运用if-else语句,判定代码、注释、空行的级别。如此,便实现了课题的要求。Р图8 printR()函数流程图Р三、调试过程及实验结果Р1、调试过程:Р 在对“打印输出结果”进行编程时,将if (sum==0)误写为if (sum=0),程序出现错误。错误结果如下图9Р图9 错误结果图Р2、正确实验结果:Р图10 程序运行显示图