高分悬赏,希望大家帮忙.小弟真是山穷水尽了!!实在感激不尽!!感激不尽!谢谢大家~

【问题描述】

读入一个C程序,统计程序中代码、注释和空行的行数以及函数的个数和平均行数,并利用统计信息分析评价该程序的风格。

【基本要求】

(1) 把 C 程序文件按字符顺序读入源程序;

(2) 边读入程序,边识别统计代码行、注释行和空行,同时还要识别函数的开始和结束,以便统计其个数和平均行数。

(3) 程序的风格评价分为代码、注释和空行三个方面。每个方面分为 A,B,C 和 D 四个等级 , 等级的划分标准是 :

A级
B级
C级
D级

代码(函数平均长度)
10~15行
8~9或16~20行
5~7或21~24行
<5或>24行

注释(占总行数比率)
15~25%
10~14或26~30%
5~9或31~35%
<5%或>35%

空行(占总行数比率)
15~25%
10~14或26~30%
5~9或31~35%
<5%或>35%

【测试数据】

先对较小的程序进行分析。当你的程序能正确运行时,对你的程序本身进行分析。

【实现提示】

为了实现的方便,可作以下约定:

(1) 头两个字符是 FFF 的行称为注释行(该行不含语句)。除了空行和注释行外,其余均为代码行(包括类型定义、变量定义和函数头)。

(2) 每个函数代码行数(除去空行和注释行)称为该函数的长度。

(3) 每行最多只有一个"{" 、"}"、"switch" 和"struet"(便于识别函数的结束行)。

【选作内容】

(1) 报告函数的平均长度。

(2) 找出最长函数及其在程序中的位置。

(3) 允许函数的嵌套定义,报告最大的函数嵌套深度。

大家多多帮帮我,我不行了.我跪谢大家!

那是编译器做的事情,你想编个编译器出来啊?
温馨提示:答案为网友推荐,仅供参考
第1个回答  2010-10-03
太难了!