全國(guó)2011年1月高等教育自學(xué)考試C++程序設(shè)計(jì)試題_第5頁(yè)
50.在下面橫線(xiàn)處填上求兩個(gè)浮點(diǎn)數(shù)之差的cha函數(shù)的原型聲明、調(diào)用方法。
#include<iostream>
using namespace std;
void main()
{
float a,b;
_________//函數(shù)cha的原型聲明
a=12.5;
b=6.5;
float c=__________________; //調(diào)用函數(shù)cha
cout<<c<<endl;
}
float cha(float x,float y)
{
float w;
w=x-y;
return w;
}
五、程序分析題(本大題共4小題,每小題5分,共20分)
51.給出下面程序的輸出結(jié)果。
#include<iostream.h>
template<class T>
class Sample
{
T n;
public:
Sample(T i){n=i;}
int operator==(Sample&);
};
template<class T>
int Sample<T>::operator==(Sample&s)
{
if(n==s.n)
return 1;
else
return 0;
}
void main()
{
Sample<int>sl(2),s2(3);
cout<<"sl與s2的數(shù)據(jù)成員"<<(sl==s2?"相等":"不相等")<<endl;
Sample<double>s3(2.5),s4(2.5);
cout<<"s3與s4的數(shù)據(jù)成員"<<(s3==s4?"相等":"不相等")<<endl;
}
52.給出下面程序的輸出結(jié)果。
#include<iostream>
using namespace std;
template<class T>
T max(T ml,T m2)
{return(ml>m2)?ml:m2;}
void main() {
cout<<max(1,7)<< "\t"<<max(2.0,5.0)<<endl;
cout<<max(‘y',‘b')<< "\t"<<max("A","a")<<endl;
}
53.給出下面程序的輸出結(jié)果
#include<iostream>
using namespace std;
class A {
public:
int x;
A(){}
A(int a){x=a;}
int get(int a){return x+a;} };
void main() {
A a(8);
int(A::*p)(int);
p=A::get;
cout<<(a.*p)(5)<<endl;
A*pi=&a;
cout<<(pi->*p)(7)<<endl; }
責(zé)編:snrvge