C语言中fprintf函数的使用介绍

C语言中fprintf函数的使用介绍C语言中fprintf函数的使用介绍fprint函数的原型://fp为文件指针,format是输出控制字符串intfprintf(FILE*fp,char*format,…)下面是使用fscanf和fprintf函数实现一个学生信息输入和输出的demo#include<stdio.h>#include<stdlib.h>#include<st…

大家好,又见面了,我是你们的朋友全栈君。如果您正在找激活码,请点击查看最新教程,关注关注公众号 “全栈程序员社区” 获取激活教程,可能之前旧版本教程已经失效.最新Idea2022.1教程亲测有效,一键激活。

Jetbrains全系列IDE稳定放心使用

C语言中fprintf函数的使用介绍

fprint函数的原型:

//fp为文件指针,format是输出控制字符串
int fprintf(FILE *fp,char *format,...)

下面是使用fscanf和fprintf函数实现一个学生信息输入和输出的demo

#include<stdio.h>
#include<stdlib.h>
#include<string.h>
#define N 2


struct Student{ 
   
	char name[10];
	int num;
	int age;
	float score;
} boya[N],boyb[N],*pa,*pb;


int main(){ 
   
	FILE *fp;
	int i;
	pa=boya;
	pb=boyb;
	if((fp=fopen("D:\\demo.text","wt+"))==NULL)
	{ 
   
		puts("Fali to open file!");
		exit(0);
	}
	//从键盘读入数据,保存到boya中
	printf("Input data:\n");
	for(i=0;i<N;i++,pa++)
	{ 
   
		scanf("%s %d %f",pa->name,&pa->num,&pa->age,&pa->score);
		
	 } 
	 pa=boya;
	 //将boya中的数据写入到文件
	 for(i=0;i<N;i++,pa++)
	 { 
   
	 	fprintf(fp,"%s %d %d %f\n",pa->name,pa->num,pa->age,pa->score);
	  } 
	  //重置文件指针
	  rewind(fp);
	  //从文件中读取数据,保存到boyb中
	  for(i=0;i<N;i++){ 
   
	  	fscanf(fp,"%s %d %d %f\n",pb->name,&pb->num,&pb->age,&pb->score);
	  	
	  } 
	  pb=boyb;
	  //将boyb中的数据输出到显示器
	  for(i=0;i<N;i++){ 
   
	  	printf("%s %d %d %f\n",pb->name,pb->num,pb->age,pb->score);
	  } 
	  fclose(fp);
	  return 0;
	
	
}

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请联系我们举报,一经查实,本站将立刻删除。

发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/180512.html原文链接:https://javaforall.net

(0)
全栈程序员-站长的头像全栈程序员-站长


相关推荐

  • 修改MySQL表名

    修改MySQL表名一、使用SQLALTERTABLE原表名RENAMETO目标表名;二、使用Navicat如果你使用的是Navicat的话就可以直接点击表名后按F2就可以修改表名修改后保存即可…

    2022年5月22日
    32
  • matlab保存图片去掉白边_matlab输出图像不留白

    matlab保存图片去掉白边_matlab输出图像不留白MATLAB保存图片去白边MATLAB保存图片的时候经常有白边,此法可以去除四周的白边法1:imwrite(x,’name’,’format’)经过测试非常好用eg:    name_mask=[currentpath,’\data_prepare_fig\’ name’_mask.tif’];  imwrite(BW3_prepare,name_mask);法二:imshow…

    2025年11月5日
    4
  • NHibernate 缓存

    NHibernate 缓存NHibernate支持两种级别的缓存,即一级缓存以及二级缓存。一级缓存一级缓存就是ISession缓存,在ISession的生命周期内可用,多个ISession之间不能共享缓存的对象,通过ISessionFactory创建的ISession默认支持一级缓存,不需要特殊的配置。在NHibernate的参考文档中,对ISession的描述如下:

    2022年7月26日
    10
  • navicate premium15激活码【2021免费激活】

    (navicate premium15激活码)好多小伙伴总是说激活码老是失效,太麻烦,关注/收藏全栈君太难教程,2021永久激活的方法等着你。IntelliJ2021最新激活注册码,破解教程可免费永久激活,亲测有效,下面是详细链接哦~https://javaforall.net/100143.html1STL5S9V8F-eyJsaWNlbnNlSWQi…

    2022年3月27日
    84
  • 三立[通俗易懂]

    三立[通俗易懂]自传173、在佳木斯上网写作2013年1—-互动百科二零一三年一月起,我在佳木斯市的上网写作进入了第七年时间,钰香妻在市健身房练打乒乓球,照看外孙女和管理家务吃喝用穿。大女儿女婿在厦门外国语学校,二女儿女婿在本市文化公司上班。儿子在大连工业大学,儿媳在大连银行,孙女在北京上大学二年。2013、1、1星期二写《新年(七古)》:平平静静日历翻,新页…

    2022年5月4日
    69
  • datax(22):任务分配规则

    datax(22):任务分配规则前面学习了一些源码和datax的执行,其中有一个重要的流程任务切分。今天梳理下;一、概述Datax根首先据配置文件,确定好channel的并发数目。然后将整个job分成一个个小的task,然后划分成组。从JobContainer的start()方法开始,进入split()方法,split方法里执行后续所有的切分;二、总体流程切分任务channel数目的确定reader的切分Writer的切分合并配置分配任务三、切分任务JobContainer的split负责将整个jo.

    2022年5月17日
    93

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注全栈程序员社区公众号