| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 288 人关注过本帖
标题:重构项目,困难依旧啊我!
取消只看楼主 加入收藏
小旭哥
Rank: 2
等 级:论坛游民
帖 子:106
专家分:72
注 册:2012-11-4
结帖率:86.21%
收藏
已结贴  问题点数:10 回复次数:1 
重构项目,困难依旧啊我!
程序代码:
#include<stdio.h>
#include<string.h>
#include<stdlib.h>

typedef struct clientData
{
    int clientNum;
    char telNum[9];
    char firstName[10];
    char lastName[15];
    int tag;
}ClientData;

typedef struct billData
{
    char firstName[10];
    char lastName[15];
    char telNum[9];
    double monthFee;
    double funcFee;
    double cityFee;
    double distanceFee;
    double total;
}BillData;


int main()
{
    FILE *fp1, *fp2;
    ClientData client = { 0, "", "", "", 0 };
    BillData bill = { "", "", "", 0, 0, 0, 0, 0 };

    if( ( fp1 = fopen( "client.txt", "r+" ) ) == NULL )
    {
        printf( "File can not be opened\n" );
        exit(1);
    }

    if( ( fp2 = fopen( "bill.txt", "w" ) ) == NULL )
    {
        printf( "\nFile can not be opened\n" );
        exit(1);
    }
    else
    {
        while( fscanf( fp1, "%4d%10s%12s%15s%d", &client.clientNum, client.telNum, client.firstName, client.lastName, &client.tag ) != EOF )
        {
            strcpy( bill.telNum, client.telNum );
            strcpy( bill.firstName, client.firstName );
            strcpy( bill.lastName, client.lastName );
            bill.monthFee = 26;
            bill.funcFee = ( client.tag == 1 ) ? 6 : 0;
            bill.cityFee = 0;
            bill.distanceFee = 0;
            bill.total = bill.monthFee + bill.funcFee;

            fseek( fp1, 0, SEEK_END );
        //    fprintf( fp1, "\n" );
            fprintf( fp2, "%-12s %-15s %-10s %-4.0f %-4.0f %-8.2f %-8.2f %-8.2f\n", bill.firstName, bill.lastName, bill.telNum, bill.monthFee, bill.funcFee, bill.cityFee,
                                              bill.distanceFee, bill.total );
        }
    }

    return 0;
}



文档内容:fp1所指文档
   1 82790301   yan          meng               1
   2 82790469   lu           chengcheng         0
   3 82780564   lu           yin                1
   4 82790203   zhang        zhou               0
   5 82790558   wu           xu                 1
   6 82789098   lu           jingqing           0
   7 82786098   wu           min                1
   8 82633381   wu           di                 1

读取fp1的内容,经过一定的处理,放到fp2文件中。结果我值只处理了一条。我调试了下,发现while循环只循环了一次。那个fscanf函数怎么只读取一次呢????
搜索更多相关主题的帖子: 项目 
2012-12-12 17:48
小旭哥
Rank: 2
等 级:论坛游民
帖 子:106
专家分:72
注 册:2012-11-4
收藏
得分:0 
回复 3楼 azzbcc
哈哈   我太喜欢大哥你了!!!!!!!!!你帮了我大忙了!!!!!能加你QQ么,我想以后要是遇到自己实在不能解决的问题,我可以直接用QQ找你?不知道大哥你是否愿意啊?
2012-12-12 18:42
快速回复:重构项目,困难依旧啊我!
数据加载中...
 
   



关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.020462 second(s), 8 queries.
Copyright©2004-2024, BCCN.NET, All Rights Reserved