当前位置: 首页 > 文档资料 > C++大学教程 >

4.13 自测练习答案

优质
小牛编辑
134浏览
2023-12-01

4.1

a)数组。b)名称、类型。c)下标。d)常量变量。c)排序。0查找。e)双下标。

4.2

a)不正确。任何数组只能存放相同类型的值。
b)不正确。数组下标通常为整数或整型表达式。
c)不正确。其余元素自动初始化为0。
d)正确。
e)不正确。数组各个元素通过按值调用传递。如果将整个数组传递给函数,则任何修改将影响原始数组。

4.3

a) const iht arraySize = 10;
b) float fractions[ arraySize ] = { 0 };
c) fractions[ 3 ]
d) fractions[ 4 ]
e) fractions[ 9 ] = 1.667;
fractions[ 6 ] - 3.333;
g) cout << setiosflags ( ios: :fixed I ios: :showpoint )
<< setprecision( 2 ) << fractions[ 6 ] << ''
<< fractions[ 9 ] << endl;

输出:

3.33 1.67

h) for( int x = 0;x < arraySize; x ++)
cout << "fractions[ "<< x << "} =" << fractions[ x ]
<< endl;

输出:

fractions[ 0 ] = 0
fractions[ 1 ] = 0
fractions[ 2 ] = 0
fractions[ 3 ] = 0
fractions[ 4 ] = 0
fractions[ 5 ] = 0
fractious[ 6 ] = 3.333
fractious[ 7 ] = 0
fractions[ 8 ] = 0
fractious[ 9 ] = 1.667

4.4

a) int table[ arraySize ] [ arraySize ];
b) 9个.
c) for (x = 0; x < arraySize; x++ )
for ( y = O; y < arraySize; x++ )
table[ x ] [ y ] = x + y;
d) cout <<" [ 0 ] [ 1 ] [ 2 ]" << endl;
for (int x = O; x < arraySize; x++ ) {
cout << '[ ' << x << "] ";
for (int y = O; y < arraySize; y++ )
cout << setw(3) << table[ x ][ y ] << " ";
cout << endl;

输出:

[ O ] [ 1 ] [ 2 ]
[ O ] 1 8 0
[ 1 ] 2 4 6
[ 2 ] 5 0 0

4.5

a)不正确:#includc预处理指令后面不应有分号。
纠正:删除#include预处理指令后面的分号。
b)不正确:用赋值语句对常量变量赋值。
纠正:在const int arraySize 声明中对常量变量赋值。
c)不正确。在数组边界之外引用数组元素(b[10])。
纠正:将控制变量的终值变为9。
d)不正确:数组下标错误。
纠正:将语句变为 a[1][1]=5;