1.用fgets计算行数
代码
#include <stdio.h>
#include<string.h>
#include<stdlib.h>
int main(int argc, const char *argv[])
{
FILE *fp=fopen("./a.txt","r");
if(NULL == fp)
{ perror("fpopen");
return -1;
}
char bur[20];
int count=0;
char *x;
while(1)
{ x=fgets(bur,sizeof(bur),fp);
if(x==NULL)
break;
count++;
}
printf("行数为:%d\n",count);
fclose(fp);
return 0;
}
运行结果

2.运用fwrite和fread实现文件复制
代码
#include <stdio.h>
#include<string.h>
#include<stdlib.h>
#include<IOhead.h>
int main(int argc, const char *argv[])
{
FILE *fp=fopen("./s.txt","r");
if (NULL==fp)
{ ERR_MSG("fopen");
return -1;
}
FILE *fb=fopen("copy.txt","w");
if(NULL==fb)
{ ERR_MSG("fopen");
return -1;
}
char a;
while(1)
{int res=fread(&a,1,sizeof(a),fp);
if(res==0)
break;
res=fwrite(&a,1,sizeof(a),fb);
}
fclose(fp);
fclose(fb);
return 0;
}
运行结果

思维导图:

该文展示了两个C语言程序,第一个使用fgets函数计算文本文件的行数,第二个利用fwrite和fread函数实现文件的复制。在行数统计程序中,通过读取每一行并累加计数器实现。文件复制程序则读取源文件的每个字节并写入目标文件。





