- 1、本文档共3页,可阅读全部内容。
- 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
学生C语言程序设计作业 班级:软件1702 姓名:张栋
C语言程序设计
章节:文件的读写
题目
编写一个程序,用于统计C语言源程序的总行数、总字符数(包括空格)注释字符数及其比例(用百分数表示),空格数及其比例(用百分数表示)。
算法描述或流程图开始
开始
打开
打开待统计的源程序文件
从文件中读一行
从文件中读一行,判断是否为空
T
F
行数
行数+1
字符总数
字符总数+=本行字符数
统计空格数
统计空格数
统计注释字符数及所占比例
统计注释字符数及所占比例
关闭文件并打印相关结果
关闭文件并打印相关结果
结束
结束
程序代码
#include stdio.h
#include string.h
void main(int agrc,char *argv[])
{
FILE *fp;
char str[100];
int i,flag=0;
int line=0,total=0,space=0,note=0;
fp=fopen(argv[1],r);
while(fgets(str,100,fp)!=NULL)
{
line++;
total+=strlen(str);
for(i=0;istrlen(str);i++)//统计空格
{
if(str[i]== )
space++;
}
if(flag==1)//多行注释,“/*”或者“*/”不在的行
note+=strlen(str);
for(i=0;istrlen(str);i++)//统计注释。为了防止注释中有多个“//”,故不能写在上一个循环中。
{
if(str[i]==/str[i-1]==/)
{
note+=(strlen(str)-i+1);
break;
}
if(str[i]==*str[i-1]==/)
{
note+=(strlen(str)-i+1);//“/*....*/”不论是多行还是一行,注释都是在该行的最后。
if(str[strlen(str)-1]!=/str[strlen(str)-2]!=*) //“/*....*/”为多行。
flag=1;
break;
}
if(str[i]==/str[i-1]==*)//“/*....*/”为多行时,“*/”所在的行,即注释的最后一行
{
flag=0;
note+=i+1;
break;
}
}
}
fclose(fp);
printf(总行数:%d\n总字符数:%d\n注释字符数:%d,所占比例:%.2f%%\n空格数:%d,所占比例:%.2f%%\n,line,total,note,note*100/(float)total,space,space*100/(float)total);
}
运行效果
被统计的代码如下图:
统计结果为:
您可能关注的文档
- (旧)供电系统识图与制图 典型接触网设备平面图识图 2无交叉线岔平面图识图.docx
- (原)测绘CAD 测绘CAD实习指导书 测绘CAD综合实习指导书.doc
- “一带一路”国际合作 合作培养项目 我校第二批赴韩国交换生汇报会顺利举行.doc
- 《社会服务功能模块》 职业动态 中国蔬菜协会来齐河考察蔬菜产业发展情况2015.10.19.doc
- 【培训课】职业技能竞赛(培训认证分库) 报考养老护理员裁判员的条件 裁判员报名流程.doc
- 0~3岁婴幼儿音乐启蒙教育 婴幼儿的动作节奏 06讲义 婴幼儿的动作节奏.docx
- 01专业信息库 教学资源 景观3dDS MAX运用.doc
- 01专业信息库 教学资源 立体构成与制作.doc
- 01专业信息库 教学资源 艺术雕塑设计与制作.doc
- 01专业信息库 实训条件 重庆美的家装饰工程有限公司.docx
最近下载
- 驼峰500重载无人机产品介绍.pdf VIP
- 建筑与市政施工现场安全卫生与职业健康通用规范培训课件-(2).pptx VIP
- 2025年社会工作者《初级综合能力》考点速记20页.pdf
- 联勤保障部队第九四〇医院面向社会招聘93人招聘笔试备考试题及答案解析.docx VIP
- SYNSPEC PM型颗粒物在线监测系统说明.ppt
- 从去思碑到言行录-元代士人的政绩颂扬、交游文化与身分形.pdf
- 赢利-未来10年的经营能力-读后感.pptx VIP
- 一次函数存在性问题(菱形).docx VIP
- 肠内营养并发症的预防与管理肠道感染的措施.pptx
- 2024年2月贵州省2024届高三大联考英语试卷(含答案).pdf VIP
文档评论(0)