C语言格式化输入输出函数(有bug未解决)

/* 格式化输入输出函数:  
int fprintf(FILE*stream,char*format,<variable-list>)
int fscanf(FILE*stream,char*format,<address-list>)
fprintf函数的返回值为实际写入文件中的字符个数(字节数)。如果写错误则返回一个负数。fprintf函数中格式化的规定与printf函数相同,所不同的只是fprintf函数是向文件写入,
而printf函数是向屏幕输出。 
fscanf函数的用法与scanf函数相似,只是它是从文件中读入信息。fscanf函数的返回值为EOF,表明读错误,否则读数据成功*/ 
//运行有bug??????? 
# include<stdio.h>
int  main()
{   
    FILE*fp;
    char ch[10];
    float fdata;
    int ia,ii;
     system("cls");
    //clrscr();
  if((fp=fopen("awe1.txt","w+"))==NULL)
    {
        printf("Cannot open this file\n");
        return 0; 
    }
    for(ii=0;ii<3;ii++)
    {
        scanf(fp,"%s%f%d",ch,&fdata,&ia);
        fprintf("%10s\t%10.4f\t%5d\n",ch,fdata,ia);

    }
    rewind(fp);
    for(ii=0;ii<3;ii++)
    {
        fscanf(fp,"%s%f%d",ch,&fdata,&ia);
        printf("%s\t%f\t%d\n",ch,fdata,ia);

    }
    if(fclose(fp))printf("File close error!\n");



} 
/*函数可以对除字符外的其他类型数据进行读写,但在读写过程中出现了误差,这是因为fprintf函数是将内存中二进制数据转化成了ASCII码写入到文件中,
而fscanf函数将文件中的ASCII码转化成二进制数据,这一转化花费的时间较多。在文件频繁读写的情况下,最好不选用这两个函数,而改用直接输入输出函数*/ 
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值