湛江海洋大学2005年第二学期 信息与计算科学专业《C++程序设计》课程考试(A卷)答案及评分标准 一、选择题(每题2分,共36分) 评分标准:选对者得2分,否则不得分。 1-5: B C C A A 6-10: A D A C D 11-15: A D B D A 16-18: C D A 二、填空(后3题每空2分,其余每空1分,共20分) 评分标准:每题与参考答案相同者得分,否则不得分。 1、73 2、6.25 4 3、x<=5 4、类  结构 5、数组  int a[10]; 6、析构函数 7、封装性 8、初始化 9、51 10、静态变量 11、friend void F(); 12、46 13、10 14、Worker *r=new Worker[n]; 三、读程题(每小题5分,共20分) 评分标准:每题与参考答案的数据和显示格式完全相同者得分,否则酌情给分。 1、s=55 2、12 160 3.5 3、WeiRong 45 1235 4、16 9 4 1 0 四、读程填空。(共9分) 评分标准:每题与参考答案完全相同者得分,否则酌情给分。 1、(1) f1+f2 (2) i%5==0 (3) f1+f2 2、(1) AA x; (2) m=x. MaxA(); (3) x.SortA(); 五、编程题。(任选15分的题) 请根据编写情况酌情给分。 1、 void strsort(char *p) { int i,j,n; char t,*w; w=p; for(n=0;*w!= ' \0 ';n++) //求串长n w++; for(i=0;i<n-1;i++) //对串由小到大排序 for(j=i+1;j<n;j++) if(p[i]>p[j]) { t=p[i]; p[i]=p[j]; p[j]=t;} } 2、 #include <iostream.h> #include <string.h> void main() { char s1[100],s2[100],s3[200]; cout<<"Please input the first string:"; cin>>s1; cout<<"Please input the second string:"; cin>>s2; strsort(s1); strsort(s2); cout<<s1<<endl; cout<<s2<<endl; s3[200]='\0'; strcat(s3,s1); strcat(s3,s2); cout<<s3; }