精華區beta NAOE-87 關於我們 聯絡資訊
#include <stdio.h> #include <process.h> int main() { double bar_data[20][3],bar_used[10][2],totalw=0.0,w,totall=0.; /*bar_data comment */ /*column index 0 for size*/ /*column index 1 for weight/ft*/ /*column index 3 for diameter*/ FILE *pbar,*ubar; int n_data,u_data,i,j,lower,upper,size,temp_size,index; pbar=fopen("bardata.dat","r"); if(pbar==NULL){ printf("file open error \n"); exit(1); } ubar=fopen("barused.dat","r"); if(ubar==NULL){ printf("File open error \n"); exit(2); } fscanf(pbar,"%d",&n_data); printf("%d",n_data); for(i=0; i<n_data;++i){ fscanf(pbar,"%lf %lf %lf\n",&bar_data[i][0],&bar_data[i][1],&bar_data[i][2]); printf("%lf %lf %lf\n",bar_data[i][0],bar_data[i][1],bar_data[i][2]); } fclose(pbar); lower=(int)bar_data[0][0]; upper=(int)bar_data[n_data-1][0]; fscanf(ubar,"%d",&u_data); for(i=0; i<u_data;++i){ fscanf(ubar,"%lf %lf\n",&bar_used[i][0],&bar_used[i][1]); printf("%lf %lf\n",bar_used[i][0],bar_used[i][1]); } fclose(ubar); printf("\tsize\tDiameter\tLength(ft)\tWeight(lb.)\n"); for(i=0; i<u_data;++i){ size=(int)bar_used[i][0]; if((size<lower)||(size>upper)){ printf("Size out of range\n"); exit(3); } for(j=0; j<n_data;++j){ temp_size=(int)bar_data[j][0]; if(size!=temp_size)continue; index=j; w=bar_used[i][1]*bar_data[index][1]; totalw+=w; totall+=bar_used[i][1]; printf("\t%d\t %6.3lf\t\t%8.1lf\t%10.1lf\n",size,bar_data[index][2],bar_used[i][1],w); } } printf("\tTotal\t \t \t %12.1lf\t %12.1lf\n",totall,totalw); return 0; } -- ※ 發信站: 批踢踢實業坊(ptt.twbbs.org) ◆ From: pc86.na.ntu.edu