试题答案及评分标准 (供参考) 一、选择题(每小题1分,共6分) 评分标准:选对者得1分,否则不得分。 1. B 2. C 3. D 1. C 5. A 6. D 二、填空题(每小题2分,共24分) 评分标准:每题与参考答案相同者得2分,否则酌情给分。 1. 43-18=25 2. H 3. 初始化 4. ++x 5. false 或 0 true 或 1 6. 数组类型 7. 26 8. a+( i*N )*sizeof( a[0][0] ) 或 a+i*sizeof( a[i] ) 9. *(p->b) 10. 析构函数 11. friend void F( ); 11. iostream.h 或 iomanip.h 三、下列程序运行后的输出结果(每小题6分,共36分) 评分标准:每题与参考答案的数据和显示格式完全相同者得6分,否则酌情给分。 1. i,s=15,56 2. 4 3 3. 2 4 6 8 10 12 14 16 18 4. 25 10 25 10 5. 2 3 4 5 6. 9 21 四、写出下列每个函数的功能(每小题6分,共24 分) 评分标准:每题与参考答案的叙述含义相同者得6分,否则酌情给分。 1.计算 1+X/2+X2/3+…+Xn/(n+1)的值并返回。 2.求出从键盘上输入的一批常数的平均值,以-1作为结束输入的标志。 3.采用选择排序的方法对数组a中的n个整数按照从小到大有次序重新排列。 4.从向文件fname中依次读取每个字符串并输出到屏幕上显示出来,同时统计并显示出文件中的字符串个数。 五、编写一个函数,统计出具有n个元素的一维数组中大于等于所有元素平均值的元素个数并返回。(10分) 评分标准见参考程序中的注释。 int Count(double a[],int n) { double m=0; int i; for (i=0; i<n; i++) m+=a[i]; // 计算出所有元素之和得3分 m=m/n; // 计算出平均值得1分 int c=0; for (i=0; i<n; i++) if (a[i]>m) c++; // 按条件统计出元素个数得4分 return c; // 返回统计结果得2分 }

评论