题目:
代码:
#include<stdio.h>
#include<stdlib.h>
#include<string.h>
int charshu=0;
int wordshu=0;
int lineshu=0;
int Foundation(FILE *fp1,char a)
{
char ch;
// 统计文件字符数
if(a=='c')
{
ch = fgetc(fp1);
while(ch!=EOF)
{
charshu++;
ch = fgetc(fp1);
}
return charshu;
}
//统计文件词数
else if(a=='w')
{
while(feof(fp1)==0)
{
fscanf(fp1,"%c",&ch);
if (((a <= 'z') && (a >= 'a')) || ((a<= 'Z') && (a >= 'A')) )
wordshu++;
}
wordshu--;
return wordshu;
}
//统计文件行数
else if(a=='l')
{
ch = fgetc(fp1);
while(ch!=EOF)
{
if(ch=='\n')
{
lineshu++;
}
ch = fgetc(fp1);
}
lineshu++;
return lineshu;
}
else
{
printf("输入错误!\n");
}
}
int main(int argc, char* argv[])
{
FILE *fp1;
char name[20],a;
int count=0;
scanf("%c",&a);//作为判断条件
scanf("%s",&name);//输入文件名
//打开文件
if((fp1 = fopen( name, "r" )) == NULL){
printf(" File open error!\n" );
exit(0);
}
if(argc==1)
{
count=Foundation(fp1,a);//调用函数
}
if(argc==2)
{
count=Foundation(fp1,a);//调用函数
}
if(argc==3)
{
count=Foundation(fp1,a);//调用函数
}
printf("%d\n",count);
if(fclose(fp1)){
printf("Can not close the file!\n");
exit(0);
}
return 0;
}
错误信息:
原因:
我是先输入字符串,再输入字符就错了,后来我改为先输入字符,后输入字符串,就对了
改正后:
第一种情况输入c:
第一种情况输入w:
第一种情况输入l:
第一种情况输入其它:
总结:
这两周我们学了文件的建立、文件的打开与关闭、文件的读写,还有位运算(&、|、^、~),学的东西比较多,老师上课讲的都可以听懂,只是这次作业我不太会,感觉自己还要花一些时间去复习一下老师教的东西,然后再把作业完成,这两周嘛,感觉没有PTA作业,有点不习惯,平时写PTA写习惯了,突然没了,感觉有点不适应,不过嘛,也没浪费时间,每天都会在ACM的题库做一些题,自己每天学一个算法,在以后的几周,也会好好复习C语言,不会把它忘了。
老师我想对你说:
本来我以为不会有离别的感觉,然而,当看到老师最后写的东西时,心里感觉特别沉重,因为一直以来我都把老师当做是我的指路人,自己有什么知识不会的,我都会及时和老师沟通,自己有什么心事我也会和老师说,希望老师可以给我一些建议,让我可以少走一些弯路,自己也开开心心的学习,然而,当老师说要分开时,心里感觉特别不是滋味,虽然老师平时对我们比较严厉,作业要求也比较多,但是,我知道老师是为我们好,只是有很多人不明白罢了,我也始终相信我现在所作的一切,在将来都会发挥一定作用,还记得上学期第一次见面时,老师就说下学期会教我们,上学期老师给我讲课时,我不太适应老师,因为老师讲课的风格和车老师不同,我们都已经适应车老师的风格了,而且老师当时讲的也特别快;不过经过这学期的相处,我感觉老师特别好,课前告诉我们要学什么,课后还发ppt,特别是讲课时,有时怕我们听不好,刻意去改变自己的风格去适应我们,课下发现我们作业有地方不对的,会及时消息给我们,让我们去改;我希望老师以后可以放松的,别弄的太辛苦了;不过我发现老师上课有一个问题——就是没有把握好自己的上课时间,有时没有把本该两节课要讲完的东西讲完,最后和老师说声:再见,祝你一直开开心心。
我谈PTA与博客:
一说到PTA,我就比较兴奋,因为它可以帮我们及时巩固老师上课讲的东西,也会让我们发现自己的不足之处,我认为它非常好,而谈到博客,本来我一开始特别不想写,因为我打字特别慢,别人一个小时写完的东西,我有可能要花两三个小时,才可以完成,它也限制了我们很多做题的时间,不过后来嘛,我也意识到了它的许多好处,一是我打字的速度比以前快了许多,二是,我们表达能力也提升了许多,写的代码也越来越严谨,每写一个代码都想知道它什么意思。
我的进度: