第4次作业

作业要求一 (70分)
实践最简答的项目wordcount,必须完成其中的基本功能,若可以完成其他功能给予加分。完成后请将你的设计思路、主要代码写在本次作业博客里。

1 设计思路
主要描述题目算法
第一步:判断参数进入相应函数。
第二步:进入统计行数函数,打开文件,统计换行符个数,关闭文件,返回统计数。
第三步:进入统计字符函数,打开文件,统计字符个数,关闭文件,返回统计数。
第四步:进入统计单词函数,打开文件,判断字符是否为字母,每次由字母转为非字母字符,统计个数,关闭文件,返回统计数。
第五步:输出相应内容。

2.实验代码

#include <stdio.h>
#include <string.h>
int Line_number( char *file_name )
{
	int lines;
	char ch;
	FILE *fp;
	fp = fopen( file_name,"r" );
	if( fp == NULL )
	{
		printf( "File Open Error!\n" );
		return 0;
	}
	ch = fgetc(fp);
	lines = 0;
	while( ch != EOF )
	{
		if( ch == '\n' )
		{
			lines = lines + 1;
		}
		ch = fgetc(fp);
	}
	if( fclose(fp) )
	{
		printf( "Can Not Close The File!\n" );
		return 0;
	}
	return lines;
}
int char_number( char *file_name )
{
	int num;
	char ch;
	FILE *fp;
	fp = fopen( file_name,"r" );
	if( fp == NULL )
	{
		printf( "File Open Error!\n" );
		return 0;
	}
	ch = fgetc(fp);
	num = 0;
	while( ch != EOF )
	{
		num = num + 1;
		ch = fgetc(fp);
	}
	if( fclose(fp) )
	{
		printf( "Can Not Close The File!\n" );
		return 0;
	}
	return num;
}
int word_number( char *file_name )
{
	int word,f;
	char ch;
	FILE *fp;
	fp = fopen( file_name,"r" );
	if( fp == NULL )
	{
		printf( "File Open Error!\n" );
		return 0;
	}
	ch = fgetc(fp);
	word = 0;
	f = 0;
	while( ch != EOF )
	{
		if(((ch >= 'a')&&(ch <= 'z'))||((ch >= 'A')&&(ch <= 'Z')))
		{
			f = 0;
		}else
		{
			if(f == 0)
			{
				word = word + 1;
				f = 1;
			}
		}
		ch = fgetc(fp);
	}
	if( fclose(fp) )
	{
		printf( "Can Not Close The File!\n" );
		return 0;
	}
	return word;
}
int main( int argc,char *argv[] )
{
	int lines;
	int numbers;
	int words;
	while( argv[2] )
	{
		if( strcmp(argv[1],"-l") == 0)
		{
			lines = Line_number(argv[2]);
			printf( "%s的行数 = %d\n",argv[2],lines );
		}
		if( strcmp(argv[1],"-c") == 0)
		{
			numbers = char_number(argv[2]) - 1;
			printf( "%s的字符数 = %d\n",argv[2],numbers );
		}
		if( strcmp(argv[1],"-w") == 0)
		{
			words = word_number(argv[2]) - 1;
			printf( "%s的词的数目 = %d\n",argv[2],words );
		}
		break;
	}
}

要求三、学习总结和进度(30分)

1、将PTA作业的源代码使用git提交到托管平台上,要求给出上传成功截图和你的git地址。(3分)###

git地址
https://git.coding.net/z732511533/ZYS.git

2、点评3个同学的本周作业(在作业中给出被点评同学博客的链接),并邀请3名同学点评你的作业,无点评作业(你的作业未被3人点评)/或者没有回复同学或老师的点评都倒扣该题分数。(4分)###

http://www.cnblogs.com/exo123/p/8982620.html
http://www.cnblogs.com/gu-an-cheng-wxm/p/8992743.html
http://www.cnblogs.com/2719610441qqcom/p/8992324.html

3、请用表格和折线图呈现你本学期的代码行数和所用时间、博客字数和所用时间,包括ACM刷题等其他平时自己练习的代码(7分),注意只要给出真实的数据就可以得分,不会因为你的行数少就少给分,只是想了解大家的真实代码量。###

时间 代码行数 时间1(min) 博客字数 时间2(min)
3.12 0 0 0 0
3.13 100 40 0 0
3.14 50 20 0 0
3.15 0 0 0 0
3.16 60 25 0 0
3.17 0 0 0 0
3.18 50 20 0 0
3.19 0 0 0 0
3.20 150 50 0 0
3.21 50 20 0 0
3.22 40 15 300 100
3.23 0 0 0 0
3.24 50 20 300 50
3.25 60 20 600 180
3.26 97 100 564 20
3.27 0 0 355 70
3.28 0 0 0 0
3.29 60 70 0 0
3.30 0 0 0 0
3.31 0 0 0 0
4.01 0 0 572 57
4.02 150 88 426 78
4.03 0 0 0 0
4.04 0 0 0 0
4.05 0 0 0 0
4.06 0 0 0 0
4.07 0 0 0 0
4.08 0 0 129 25
4.09 43 27 814 42
4.10 0 0 0 0
4.11 71 135 0 0
4.12 0 0 0 0
4.13 0 0 0 0
4.14 0 0 0 0
4.15 0 0 0 0
4.16 74 120 0 0
4.17 67 79 0 0
4.18 94 120 0 0
4.19 0 0 0 0
4.20 379 300 0 0
4.21 343 180 969 85
4.22 0 0 648 65
4.23 0 0 0 0
4.24 0 0 0 0
4.25 0 0 0 0
4.26 140 70 120 466
4.27 0 0 0 0
4.28 0 0 0 0
4.29 0 0 0 0
4.30 0 0 0 0
5.01 0 0 0 0
5.02 0 0 0 0
5.03 0 0 0 0
5.04 0 0 87 834
5.05 0 0 0 0

4、本学期课程即将结束,请总结下你本课程的收获,回顾第0次作业,你是否实现了你的目标?(5分)###

在本学期开始感觉到学习内容的难度有了很大的提升,相比上学期对知识的了解更加的深刻,回顾了以前的题目,发现曾经做的非常麻烦的题现在已经可以很简便的写出了。在本学期我学习了指针,结构,链表和文件,在指针方面,我认为各种类型的表达是十分难掌握的,想要运用好它还需要在基础知识上有更多的学习和了解,结构和链表我认为相对较好,多多练习就可以大致了解它的运行步骤了,在文件上我所花的时间最少,所以还不太熟,还需要时间去学习了解。回顾第0次作业,我已经可以运用这些知识完成作业题目了,所以已经完成了基本要求,而完全灵活运用还需要更多的时间练习。在练习时间上,前期我的练习时间并没有达标,而在最近的两周内我的练习量已经超过了预定的目标。

5、你对目前的上课和作业方式(上课讲解+PTA+博客)有何意见和建议?(5分)###

我对现在的教学方式没有意见,在作业方式上我希望PTA可以在课前就发布出来,这样提前了解题目可以有助于预习。在博客方面我已经习惯了这种方式,所以没有更多的意见和建议。在上课讲解方面我觉得一起打代码印象会比较深,相比直接讲解代码效果会更好。

6、终于我们即将不再是师生。当你结束本课程,你和我就站在同样的位置上,我将不再基于学校授权和知识、经验 (年龄?)上的优势而对你的自由有任何干扰。除发布成绩以外,我最后一次行使教师特权: 请问你有什么要对教师 (我)说的,建议、抱怨、希望……多谢。(5分)###

我认为老师还是非常好的,真心希望同学们能够学好这门课,课上经常反复讲解知识并询问是否学会了,感觉老师非常的辛苦,在微信上也经常和同学们互动聊天,非常的有趣。在建议方面,我希望老师和同学们在课堂上都更活跃些就好了。

posted @ 2018-05-04 22:48  左右羽  阅读(211)  评论(6编辑  收藏  举报