【发布时间】:2013-12-09 20:18:21
【问题描述】:
我正在尝试让我的程序正确读取我的输入文件,以下是我的输入文件,第一列是我希望用户输入的内容,然后需要从相应的行中取出值,这些值被阅读是错误的。
14、14、8、0.4、16、2.0、1.7、7、4.7、0.23、0.44、290、350
16、16、10、0.5、17、2.2、1.8、8、5.4、0.27、0.5、310、370
18、18、11、0.5、18、2.2、2.0、9、6.0、0.30、0.56、320、380
20、20、12、0.5、19、2.3、2.2、9.5、6.4、0.32、0.59、330、390
22、22、13、0.5、20、2.4、2.4、10、6.7、0.33、0.63、340、410
24、24、14、0.5、21、2.5、2.5、11、7.4、0.37、0.69、350、420
27、27、16、0.6、22、2.6、2.8、11.5、7.7、0.38、0.72、370、450
30、30、18、0.6、23、2.7、3.0、12、8.0、0.40、0.75、380、460
35、35、21、0.6、25、2.8、3.4、13、8.7、0.43、0.81、400、480
40、40、24、0.6、26、2.9、3.8、14、9.4、0.47、0.88、420、500
45、45、27、0.6、27、3.1、3.8、15、10.0、0.50、0.94、440、520
50、50、30、0.6、29、3.2、3.8、16、10.7、0.53、1.00、460、550
ifstream soft;
soft.open ("Softwood.txt"); //Opens the softwood text file which holds the values required for calculations
cout <<"Please enter the strength class of the timber, excluding the letter." <<endl;
cin >> type;
float a [12][13]; //begins the array so the input file can be read
int i, j;
for (i=0; i<12; i++)
{
for (int j=0; j<13; j++)
soft>>a[i][j];
}
int m=0;
while(a[m][0]!= type && m<12)
{
m++;
}
bendingStrength = a[m][1];
tensionParallel = a[m][2];
tensionPerpindicular = a[m][3];
compressionParallel = a[m][4];
compressionPerpindicular = a[m][5];
shearStrength = a[m][6];
elasticityParallel = a[m][7];
elasticityParallelFive = a[m][8];
elasticityPerpindicular = a[m][9];
shearModulus = a[m][10];
density = a[m][11];
meanDensity = a[m][12];
【问题讨论】:
-
想一想哪里出了问题,然后打印一些调试语句,供初学者使用。
-
我注意到这是您在过去 2-3 天内发布的第三个问题。也许你需要重新考虑你的程序是如何工作的。应该可以提出更动态的解决方案。
标签: c++ arrays input multidimensional-array ifstream