个人项目:WC

---恢复内容开始---

Github项目地址https://github.com/sumilekaedei/wc.git

 

解题思路:刚开始拿到题目时,因为是第一次做这种项目,只能对已有的代码进行参考,然后理解其中的内容,加上查阅书本来编写自己的代码。首先是要打开文本对文本中的字符进行处理,然后对字符进行统计。

设计实现过程:首先编写主函数,在主函数中输入、读取文本、递归统计和输出,在递归中对输入错误时出现的情况和文本字符的统计。

代码说明:

 1 #include<stdio.h>
 2 #include<stdlib.h>
 3 #include<conio.h>
 4 #include<string.h>
 5 int c=0,w=1,l=1;
 6 void count(char *name)
 7 {
 8     FILE *fp=NULL;
 9     char a;
10     fp=fopen(name,"r");//打开文本
11     if(fp==NULL)
12     {
13         printf("输入错误");
14         _getch();
15         exit(0);
16     }
17     while(!feof(fp))//文本字符统计
18     {
19         a=fgetc(fp);
20         if(a!=' '&&a!='\n'&&a!='\t'&&a!=','&&a!='.'&&a!='!'&&a!=';'&&a!='=')
21         {
22             c++;
23         }
24         else if(a==' '||a==','||a=='.'||a=='!'||a=='?'||a==';')
25         {
26             w++;
27         }
28         else if(a=='\n'||a=='\t')
29         {
30             w++;
31             l++;
32         }
33         else if(a=EOF)break;
34     }
35     fclose(fp);//关闭文本
36 }
37 int main(int argc, char* argv[])
38 {
39     FILE *fp;
40     count(argv[2]);//递归调用
41     if(!strcmp(argv[1],"-c")) //判断输入指令
42     printf("字符数:%d\n",c);
43     else if(!strcmp(argv[1],"-w"))
44     printf("词数:%d\n",w);
45     else if(!strcmp(argv[1],"-l"))
46     printf("行数:%d\n",l);
47 }

测试运行:

PSP表格:

PSP2.1

Personal Software Process Stages

预估耗时(分钟)

实际耗时(分钟)

Planning

计划

  

· Estimate

· 估计这个任务需要多少时间

 180 300

Development

开发

  

· Analysis

· 需求分析 (包括学习新技术)

 30 30

· Design Spec

· 生成设计文档

 120 130

· Design Review

· 设计复审 (和同事审核设计文档)

 30 60

· Coding Standard

· 代码规范 (为目前的开发制定合适的规范)

 60 60

· Design

· 具体设计

 60 45

· Coding

· 具体编码

 180 240

· Code Review

· 代码复审

 60 100

· Test

· 测试(自我测试,修改代码,提交修改)

 30 30

Reporting

报告

  

· Test Report

· 测试报告

 30 30

· Size Measurement

· 计算工作量

 10 10

· Postmortem & Process Improvement Plan

· 事后总结, 并提出过程改进计划

 30 50

合计

  820 1085

项目小结:这个项目的基本功能还是比较简单,主要是一开始不会怎么编写代码来调用文本中的内容,在基本完成的时候修复bug需要的时间比较多。这个项目的不足就是并没有实现扩展功能和高级功能,只实现了基本功能。

 

转载于:https://www.cnblogs.com/sumilekaedei/p/9650608.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值