CALCUT.CPP:
struct Tmark
{
float pol;
float chn;
float eng;
float com;
float oral;
};
struct Tinform
{
char name[20];
char sex;
float age;
char schoolrecord;
float worklen;
char wordsite[100];
Tmark mark;
float Sage;
float Srecord;
float Swlen;
float total;
};
extern I;
void CALCUT(struct Tinform *p)
{
int i;
float age1[6]={0},age2[5]={0},age3[10]={0},age4[5]={0};
for(i=0,age1[0]=70.0;i<5;i++)
age1[i+1]=age1[i]+2;
for(i=0,age2[0]=84.0;i<4;i++)
age2[i+1]=age2[i]+4;
for(i=0,age3[0]=97.5;i<9;i++)
age3[i+1]=age3[i]-2.5;
for(i=0,age4[0]=74.0;i<5;i++)
age4[i+1]=age4[i]-1;
if(inf[I].age>=30.0 && inf[I].age<=35.0)
inf[I].Sage=age1[(int)(inf[I].age-30.0)];
if(inf[I].age>=36.0 && inf[I].age<=40.0)
inf[I].Sage=age2[(int)(inf[I].age-36.0)];
if(inf[I].age>=41.0 && inf[I].age<=50.0)
inf[I].Sage=age3[(int)(inf[I].age-41.0)];
if(inf[I].age>=51.0 && inf[I].age<=55.0)
inf[I].Sage=age4[(int)(inf[I].age-51.0)];
if(inf[I].schoolrecord=='D')
inf[I].Srecord=100.0;
if(inf[I].schoolrecord=='M')
inf[I].Srecord=75.0;
if(inf[I].schoolrecord=='U')
inf[I].Srecord=50.0;
if(inf[I].schoolrecord=='O')
inf[I].Srecord=0.0;
if(inf[I].worklen>=0.0 && inf[I].worklen<=1.0)
inf[I].Swlen=70*(inf[I].worklen);
if(inf[I].worklen>1.0 && inf[I].worklen<=2.0)
inf[I].Swlen=30*(inf[I].worklen)+40;
if(inf[I].worklen>2.0 && inf[I].worklen<=6.0)
inf[I].Swlen=(-20)*(inf[I].worklen)+140;
if(inf[I].worklen>6.0)
inf[I].Swlen=0;
inf[I].total=inf[I].mark.pol+inf[I].mark.chn+inf[I].mark.eng+inf[I].mark.com+inf[I].mark.oral+inf[I].Sage+inf[I].Srecord+inf[I].Swlen;
}