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",¶meter);
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语言有更加清晰的了解。为了实现这些目标,我会勤加练习,通过网络和书籍进行补充学习,有问题时更加主动同老师交流。