本试卷为自考C++程序设计模拟试题与答案解析,内含单选、填空、改错、完成程序、程序分析、程序设计6种题型。
已有复数类 Complex和主函数main(),编写一个类Root来实现求解一元二次方程的程序。
#include
class Complex
{public:
Complex(){}
void setC( double i,double j)
{real=i; image=j;}
void show();
protected:
double real, image;
};
void Complex::show()
{cout<<"("<void main(){double a,b,c;cout<<"\n请输入一元二次方程的系数a,b,c:";cin >>a>>b>>c;Root root(a,b,c);root.solve();}
void main()
{double a,b,c;
cout<<"\n请输入一元二次方程的系数a,b,c:";
cin >>a>>b>>c;
Root root(a,b,c);
root.solve();
}
运行程序,写出程序执行的结果。
class Test
{private:
static int val;
int a;
public:
static int func();
static void sfunc(Test &r);
int Test::val =20;
int Test::func()
{val--;
return val;
void Test::sfunc(Test &r)
{r.a=25;
cout<<"Result3="<}void main(){cout<<"Result1="<Test a;cout<<"Result2 ="<Test::sfunc(a);}
{cout<<"Result1="<Test a;cout<<"Result2 ="<Test::sfunc(a);}
Test a;
cout<<"Result2 ="<
Test::sfunc(a);
给出下面程序的输出结果。
using namespace std;
{int num=0,i=8;
do
{i--;
num++;
}while(--i);
cout<}
采用冒泡法对数组a中的整数由小到大进行排序。
void sort( int b[],int n)
{int i,j =0,t;
for(i=1;i{for(j=0;___________;j++){if(b[j]>b[j+1]){t=b[j];___________;b[j+1]=t;}}}}void main(){int a[]={3,2,7,1,19,6,2,8};int i;for(i=0;i<8;i++)cout<cout<sort(a,);for(i=0;i<8;i++)cout<cout<}
{for(j=0;___________;j++)
{if(b[j]>b[j+1])
{t=b[j];___________;b[j+1]=t;}
{int a[]={3,2,7,1,19,6,2,8};
int i;
for(i=0;i<8;i++)
cout<
cout<sort(a,);for(i=0;i<8;i++)cout<cout<}
sort(a,);
class point{
private:
int x,y;
point(int,int);
point(point&);
point::point(int a,int b)
x=a;
________=b;
point::point(________)
{
x=z.x;
y=z.y:
void main(){
point p1(2,3);
point p2(p1);
完成下面类中成员函数的定义。
class A
int val;
A(int i)
{val=i;}
int();
A::operator int()
{_________}
class B:public A
B(int i):A(i){}
{B n(100)
int i=n;
class Arr
{protected:
float*p;
int n;//数组大小(元素个数)
Arr(int sz=10)
{n=sz
p=new float[n];
~Arr(void)
{__________}
int Getn(void)const
return n;
float& operator[](int i)
void Print();
void Arr::Print()
{int i
for(i=0;iGetn();i++)
{if(i%10==0)
cout<cout<}cout<}void main(){Arr a(20);for(int=0;ia[i]=i*2a.Print()}
cout<}cout<}void main(){Arr a(20);for(int=0;ia[i]=i*2a.Print()}
cout<}void main(){Arr a(20);for(int=0;ia[i]=i*2a.Print()}
{Arr a(20);
for(int=0;i
a[i]=i*2
a.Print()
在下面程序的横线处填上适当内容,使程序执行结果为:" hello, andylin"
class mystring
Char*pdata;
mystring( int len)
{pdata= new char[len+1];}
~mystring()
{delete pdata;}
void show(){cout<};void fun( mystring* * array, int len){mystring ld=*array;memepy(*array, old, len);}void main(){mystring str(20);Mystring*pstr=&str;mystring**ppstr=&pstr;strepy(str.pdata,"hello, andylin");fun(ppstr,20);____________
void fun( mystring* * array, int len)
{mystring ld=*array;
memepy(*array, old, len);
{mystring str(20);
Mystring*pstr=&str;
mystring**ppstr=&pstr;
strepy(str.pdata,"hello, andylin");
fun(ppstr,20);
____________
class f{
float x,y;
f(float a, float b){x=a;y=b;}
float max(){return(x};void main(){fa(1.5,3.5);cout<}
fa(1.5,3.5);
{int n;
cin>>n;
Cin.get();
char s[n];
Cin.getline(s,n);
delete s;
相关试卷
2018年4月电子商务全国自考(电子
2017年10月电子商务全国自考(电
2017年4月电子商务全国自考(电子
2016年10月电子商务全国自考(电
2016年4月电子商务全国自考(电子
2015年10月电子商务全国自考(电
2015年4月电子商务全国自考(电子
2014年10月电子商务全国自考(电
2014年4月电子商务全国自考(电子
2013年10月电子商务全国自考(电