#include <stdio.h>
int main ()
{
float bar_data[20][3],bar_used[10][2]; /*bar_data[0] : size , b
ar_data[1] : weight , bar_data[2] : diameter*/
/*bar_used[0] : size ,
bar_used[1] : length*/
float weight_item,weight=0.0,length=0.0; /*declare weight items,t
otal weight,and total length*/
FILE *dataptr; /*read bar_data from bar_data.dat*/
dataptr=fopen("bar_data.dat","r");
for (int i=0;i<=11;i++)
{
fscanf(dataptr,"%f %f %f",&bar_data[i][0],&bar_data[i][1],&bar_d
ata[i][2]);
bar_data[i][2]*=2.54; /*convert in. to cm.*/
bar_data[i][1]=bar_data[i][1]*0.454/12.0/2.54*100.0; /*conver
t lb./ft. to kg/m*/
}
fclose(dataptr);
FILE *usedptr; /*read bar_used from bar_used.dat*/
usedptr=fopen("bar_used.dat","r");
for (int j=0;j<=3;j++)
{
fscanf(usedptr,"%f %f",&bar_used[j][0],&bar_used[j][1]);
bar_used[j][1]=bar_used[j][1]*12.0*2.54/100.0; /*conver
t ft. to m*/
}
fclose(usedptr);
printf("---------------------------------------------------\n");
printf("Size\tDiameter(cm)\tLength(m)\tWeight(kg)\n");
printf("---------------------------------------------------\n");
for (int m=0;m<=3;m++) /*find the wanted sizes and calculate we
ight and output*/
for (int k=0;k<=11;k++)
if (bar_used[m][0]==bar_data[k][0])
/*compare the sizes*/
{
weight_item=(bar_data[k][1])*(bar_used[m][1]);
weight+=weight_item;
length+=bar_used[m][1];
printf("%2.0f\t\t\b\b\b\b%4.3f\t%5.1f\t\t%6.1f\n
",bar_used[m][0],bar_data[k][2],bar_used[m][1],weight_item);
}
printf("Total\t\t\t%5.1f\t\t%7.1f\n",length,weight);
printf("---------------------------------------------------\n");
return 0;
}
--
給我記著!
I'm a member of
CKEISC 16th | National Taiwan University
Department of Networking | Department of Naval Architecture
| and Ocean Engineering
twwang@ck.tp.edu.tw | twwang@linux.na.ntu.edu.tw
--
※ 發信站: 批踢踢實業坊(ptt.twbbs.org)
◆ From: IP028.dialup.nt