IO进程线程 8月20日

作业1 fgets获取文件的行号

#include <myhead.h>

int main(int argc, const char *argv[])
{
	FILE *pf=fopen("./1.txt","r");
	if(pf==NULL)
	{
		perror("fp");
		return -1;
	}
	char buff[20];
	int count=0;
	int len;
	while(fgets(buff,sizeof(buff),pf))//输出完为NULL,循环自动结束
	{
		len=strlen(buff)-1;
		if(buff[len]=='\n')
		{
		count++;
		}
	}
	printf("行数为%d\n",count);
	return 0;
}

作业2 fgets和fputs拷贝文件

#include <myhead.h>

int main(int argc, const char *argv[])
{
	if(argc!=3)
	{
		printf("外部参数错误\n");
		return -1;
	}
	FILE *pf1=fopen("./1.txt","r");
	if(pf1==NULL)
	{
		perror("pf1");
		return -1;
	}
	FILE *pf2=fopen("./2.txt","w");
	if(pf2==NULL)
	{
		perror("f2");
		return -1;
	}
	char bu1[20];
	while(fgets(bu1,sizeof(bu1),pf1))//输出完为NULL,循环自动结束
	{
		fputs(bu1,pf2);//拷贝给pf2
	}
	fclose(pf1);
	fclose(pf2);
	printf("拷贝成功\n");
	//查看文件2,看是否拷贝成功
	pf2=fopen("./2.txt","r");
	char bu2[20];
	while(fgets(bu2,sizeof(bu2),pf2))//循环输出文件2
	{
		fputs(bu2,stdout);
	}
	fclose(pf2);
	return 0;
}

作业3 思维导图

  • 3
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值