题目:编写一个程序,用于处理c/c++源程序,将源程序中的注释部分去掉
输入:c/c++文件名
输出:处理后的程序源文件
程序伪代码如下:
c1,c2:char
tag:int
a:读入一个字符存入c1
if tag==0 //读入字符不是注释
if c1=='/' //可能是注释标记
读入一个字符存入c2
if c2=='*' //为/**/注释的开头
tag = 2
else if c2=='/' //为//注释的开头
tag = 1
else //不是注释标记
将c1, c2保存
else //读入的字符为代码
保存c1
else if tag==1 //读入的是//注释
if c1=='/n' //为注释结束标记
tag=0
else //读入的是/**/注释tag==2
if c1=='*' //可能为注释结束标记
读入一个字符赋给c2
if c2=='/' //是/**/注释结尾
tag=0
else //注释没有结束
nothing
goto a
程序清单如下: