C语言——第四次作业(2)

作业要求一

项目wordcount

设计思路:输入需统计的文件名,打开此文件,输入功能对应的字符,分别实现对应的功能,关闭文件。

主要代码

#include<stdio.h>
#include<string.h>
#define N 20
int main()
{
	char file_name[N],parameter[2];
	FILE *fp;
	printf("输入文件名:"); 
	scanf("%s",&file_name);		//读入文件名 
	
	//打开文件 
	if((fp=fopen(file_name,"r")) == NULL)
	{	 
   	    printf("File open error!\n"); 
		   exit(0);
	}
	printf("统计字符数:-c\n统计词数:-w\n统计行数:-l\n"); 
	printf("输入所需功能的操作:"); 
	scanf("%s",&parameter);
	if(parameter[0]!='-')	printf("输入错误");
	else
	{
		int char_num=0,word_num=0,line_num=0;
		if(parameter[1]=='c')	//统计字符数
		{
			char file_char;
			file_char = fgetc(fp); 
			while(feof(fp)==0)
			{
				char_num++;
				file_char = fgetc(fp); 
			}
			printf("字符数:%d\n",char_num);
		}
	
		else if(parameter[1]=='w')	//统计词数
		{
			char file_word;
			while(feof(fp)==0)
			{
            	fscanf(fp,"%s",&file_word);
            	word_num++;
    		}
    		printf("词数:%d\n",word_num);
		}
	
		else if(parameter[1]=='l')	//统计行数
		{
			char file_line;
			file_line = fgetc(fp); 
			while(feof(fp)==0)
			{
				if(file_line=='\n')	line_num++;
				file_line = fgetc(fp); 
        	}
        	printf("行数:%d\n",++line_num);
		}
		else	printf("输入错误\n"); 
	}
	//关闭文件 
    if(fclose(fp))
	{
        printf("Can not close the file!\n"); 
		exit(0);
	}
	return 0;
}

学习总结和进度

1、我的git地址

2、点评

链接一
链接二
链接三

3、表格和折线图


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

第0次作业中的目标,每一项都有去做,但每一项都没有达到目标。

我希望可以熟练地掌握本学期指针、结构、链表、文件等学习内容,将这两个学期的内容融会贯通,希望可以通过和老师的交流,对C语言有更加清晰的了解。为了实现这些目标,我会勤加练习,通过网络和书籍进行补充学习,有问题时更加主动同老师交流。

本学期的学习内容基本上掌握了,但远远做不到熟练和融会贯通。

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

我对授课模式没有什么意见。但是觉得有时上课的时间分配不是很合理。老师有时会花费很长时间复习之前的内容,这没有什么问题,但是这样的行为经常会导致新授课比较仓促,希望老师以后可以更加合理分配时间吧。

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

老师是非常认真负责的,在我们相处的这些时间里,我也曾因为老师的严格要求而抱怨,但是我也因此学到了很多,感谢老师。

posted on 2018-05-04 22:16  luuuuu  阅读(187)  评论(12编辑  收藏  举报