📄 telesum.c
字号:
#include <stdlib.h>
#include <stdio.h>
#include <math.h>
#include <string.h>
#include "nfcnet.h"
void main()
{ char ffix[P_SENDOBJ][5]={0},buf[4096];
long fnum[P_SENDOBJ+1]={0},i,j,k;
long fnmx[P_SENDOBJ+1]={0};
long fday[P_SENDOBJ+1]={0},tday[P_SENDOBJ]={0};
long mon[12]={31,28,31,30,31,30,31,31,30,31,30,31};
int iy1,im1,id1,iy2,im2,id2,iy,im,id;
char fn[100],*bufp;
FILE *fp,*fpo;
if((fp=fopen("/nfcnet/sysd/fix_tab.dat","r"))==NULL)
{
printf("The file, /nfcnet/sysd/fix_tab.dat, is not found !\n");
exit(0);
}
for(i=0;i<P_SENDOBJ;i++)
{
if(fgets(ffix[i],5,fp)==NULL)
{
printf("The file, /nfcnet/sysd/fix_tab.dat, is error !\n");
exit(0);
}
ffix[i][2]=(char)0;
}
fclose(fp);
printf("Pls entry begin date [3i2] ");
scanf("%ld%ld%ld",&iy1,&im1,&id1);
printf("Pls entry end date [3i2] ");
scanf("%ld%ld%ld",&iy2,&im2,&id2);
fpo=fopen("telesum.out","w+");
iy=iy1;im=im1;id=id1-1;
do
{
id++;
if(id>mon[im-1])
{ id=id-mon[im-1];
im++;
if(im>12){im=1;iy++;}
}
printf("%2ld %3ld %3ld\n",iy,im,id);
fnum[P_SENDOBJ]=0;
for(i=0;i<P_SENDOBJ;i++)
{ fnum[i]=0;
sprintf(fn,"/nfcnet/tele/%s%02d%02d%02d.tel%c",ffix[i],iy,im,id,0);
tday[i]++;
if((fp=fopen(fn,"r"))==NULL)continue;
fday[i]++;
for(;;)
{
bufp=fgets(buf,4096,fp);
if(bufp==NULL)break;
fnum[i]++;
}
fclose(fp);
fnum[P_SENDOBJ]=fnum[P_SENDOBJ]+fnum[i];
fnmx[i]=fnmx[i]+fnum[i];
}
fnmx[P_SENDOBJ]=fnmx[P_SENDOBJ]+fnum[P_SENDOBJ];
for(i=0;i<P_SENDOBJ;i=i+8)
{
fprintf(fpo,"%s %.5ld; ",ffix[i+0],fnum[i+0]);
if(i+1<P_SENDOBJ)
fprintf(fpo,"%s %.5ld; ",ffix[i+1],fnum[i+1]);
if(i+2<P_SENDOBJ)
fprintf(fpo,"%s %.5ld; ",ffix[i+2],fnum[i+2]);
if(i+3<P_SENDOBJ)
fprintf(fpo,"%s %.5ld; ",ffix[i+3],fnum[i+3]);
if(i+4<P_SENDOBJ)
fprintf(fpo,"%s %.5ld; ",ffix[i+4],fnum[i+4]);
if(i+5<P_SENDOBJ)
fprintf(fpo,"%s %.5ld; ",ffix[i+5],fnum[i+5]);
if(i+6<P_SENDOBJ)
fprintf(fpo,"%s %.5ld; ",ffix[i+6],fnum[i+6]);
if(i+7<P_SENDOBJ)
fprintf(fpo,"%s %.5ld;\n",ffix[i+7],fnum[i+7]);
}
fprintf(fpo,"\n%.2ld %.2ld %.2ld total is %6ld\n",iy,im,id,fnum[P_SENDOBJ]);
}while((iy!=iy2)||(im!=im2)||(id!=id2));
fprintf(fpo,"\n\n\n *** This Node receiveing the telegram ***\n");
fprintf(fpo," (From %2ld %2ld%2ld to %2ld %2ld %2ld)\n\n",
iy1,im1,id1,iy2,im2,id2);
for(i=0;i<P_SENDOBJ;i=i+4)
{
fprintf(fpo,"%s %.6ld %.3ld; ",ffix[i+0],fnmx[i+0],fday[i+0]);
if(i+1<P_SENDOBJ)
fprintf(fpo,"%s %.6ld %.3ld; ",ffix[i+1],fnmx[i+1],fday[i+1]);
if(i+2<P_SENDOBJ)
fprintf(fpo,"%s %.6ld %.3ld; ",ffix[i+2],fnmx[i+2],fday[i+2]);
if(i+3<P_SENDOBJ)
fprintf(fpo,"%s %.6ld %.3ld;\n",ffix[i+3],fnmx[i+3],fday[i+2]);
}
fprintf(fpo,"\n%.4ld days total is %6ld\n",tday[0],fnmx[P_SENDOBJ]);
fclose(fpo);
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -