求C/C++编写程序的试题

几个都行只要程序是对的什么都要。有题目+写好的答案就好。最好是不同类型的。
想把带有那些所有单词的程序都看一看。了解一下他们究竟要怎么用。
PS:尽量给教学性的程序。超级程序可能我看不懂。但只要是有题并且有答案就行!
可能有点麻烦给我连接也行复制过来更好。鸣谢

连接一下:
http://zhidao.baidu.com/question/45059770.html?si=2&wtp=wk

有很多C++教程哦!
温馨提示:答案为网友推荐,仅供参考
第1个回答  2010-10-16
这样吧,,,你给邮箱给我,,我传给你
试题,,课件,,教程都有,,我扣扣771313354
第2个回答  2010-10-16
1.编写一个函数模板,用于求参数的绝对值,并编写测试程序进行测试。
函数模板声明如下:
template <class Type>
Type Abs(Type tVar)
1.参考程序:
#include <iostream>
using namespace std;

template <class Type>
Type Abs(Type tVar)
{
if (tVar >= 0) return tVar;
else return -tVar;
}

int main()
{
cout << Abs(5) << endl;
cout << Abs(-5) << endl;
cout << Abs(2.5) << endl;
cout << Abs(-2.5) << endl;

return 0;
}

2.定义一个复数类CComplex,定义带有2个参数(其中一个为缺省参数)的构造函数,显示复数值的函数Show(), 重载“+”运算符(用成员函数实现),并编写测试程序进行测试。
2.参考程序:
#include <iostream>
using namespace std;

class CComplex
{
public:
CComplex(double dReal, double dImage = 0)
{
m_dReal = dReal;
m_dImage = dImage;
}

void Show()
{
cout << m_dReal;
if (m_dImage > 0)
{
cout << "+" << m_dImage << "i" << endl;
}
else if(m_dImage < 0)
{
cout << "-" << -m_dImage << "i" << endl;
}
}
CComplex operator+(const CComplex &obj)
{
CComplex objTemp(m_dReal + obj.m_dReal, m_dImage + obj.m_dImage);
return objTemp;
}
private:
double m_dReal, m_dImage;
};
int main()
{
CComplex obj1(2, 6), obj2(3, 8), obj3(0);
obj1.Show();
obj2.Show();
obj3.Show();
obj3 = obj1 + obj2;
obj3.Show();
return 0;
}
3、定义一个抽象类CShape,它有一个纯虚函数GetLength();派生出四边型类CSquare和圆类CCircle,在派生类中重载函数GetLength(),用于求图形的周长,编写测试程序进行测试。
#include<iostream>
using namespace std;
const double PI=3.1415926;
class CShape
{
public:
virtual double GetLength()const=0;
};

class CSquare:virtual public CShape
{
public:
CSquare(double L,double W):m_dLength(L),m_dWide(W) {}
~CSquare(){};
double GetLength()const
{
cout<<"四边形的周长为: ";
return 2*(m_dLength+m_dWide);
}
private:
double m_dLength,m_dWide;
};

class CCircle:public CShape
{
public:
CCircle(double R):m_dRadis(R) {}
double GetLength()const
{
cout<<"圆的周长为: ";
return 2*PI*m_dRadis;
}
private:
double m_dRadis;
};
void main()
{
CSquare A(3.4,5.4);
CCircle B(3.9);
cout<<A.GetLength()<<endl;
cout<<B.GetLength()<<endl;
}
4、编写程序,定义抽象基类Shape(形状),由它派生出2个派生类:Circle(圆形) 和Rectangle(矩形),用函数Show()分别显示各种图形的相关信息,最后还要显示所有图形的总面积。
#include<iostream>
using namespace std;
const double PI=3.1415926;
class CShape
{
public:
virtual void show()const=0;
static double TotalArea;
static void ShowTotalArea()
{
cout<<"总面积为: "<<TotalArea<<endl;
}
};
double CShape::TotalArea=0;
class CSquare: public CShape
{
public:
CSquare(double L,double W):m_dLength(L),m_dWide(W)
{
TotalArea+=m_dLength*m_dWide;
}
~CSquare(){};
virtual void show()const
{
cout<<"四边形的周长为: "<<2*(m_dLength+m_dWide)<<endl;
cout<<"四边形的面积为: "<<m_dLength*m_dWide<<endl;

}
private:
double m_dLength,m_dWide;
};

class CCircle:public CShape
{
public:
CCircle(double R):m_dRadis(R) {TotalArea+=PI*m_dRadis*m_dRadis;}
virtual void show() const
{
cout<<"圆的周长为: "<<2*PI*m_dRadis<<endl;
cout<<"圆的面积为: "<<PI*m_dRadis*m_dRadis<<endl;
}
private:
double m_dRadis;
};
void main()
{
CSquare A(3.4,5.4);
CCircle B(3.9);
A.show();
B.show();
CShape::ShowTotalArea();
}
5、设计一个类DateInfo,要求其满足下述要求:
(1)要求有一个无参的构造函数,其初始的年、月、日分别为:2010,6,8。
(2)要求有一个带参数的构造函数,其参数分别对应年、月、日。
(3)要求用一个成员函数实现日期的设置。
(4)要求用一个成员函数实现输出日期。
要求用一个成员函数实现日期的获取。
#include <iostream.h>

class DateInfo
{
int year, month,day;
public:
DateInfo()
{
year=2010;
month=6;
day=8;
}
DateInfo(int y,int m,int d):year(y),month(m),day(d) { }
void SetDateInfo(int a, int b,int c) { year=a;month=b;day=c; }
void Show() { cout << "日期是:" <<year<<"年"<<month<< "月" <<day<<"日"<< endl; }
};

int main()
{
DateInfo obj(1998,6,10),B(2010,6,22),A,C;
obj.Show();
B.Show();
A.SetDateInfo(2012,9,24);
A.Show();
C.Show();
return 0;
}
6.定义一个复数类Complex, 二个数据成员为double型r, i 为private属性。定义代二个参数的构造函数和一个Show( ) 函数用以输出r, i的值, 另外作为成员函数重载的运算苻”+”的功能是将此类二个对象的数据成员r和i对应相加。这些成员函数的属性均为public. 请用C++编写此程序, 并编写测试程序进行测试。
#include<iostream>
using namespace std;

class Complex
{
public:
Complex(double R,double I):r(R),i(I) {}
void show()const;
Complex operator+(const Complex&);
private:
double r,i;
};
Complex Complex:: operator +(const Complex&A)
{
r+=A.r;
i+=A.r;
return *this;
}
void Complex::show() const
{
if(i>=0)
cout<<r<<"+"<<i<<"i"<<endl;
else
cout<<r<<"-"<<-i<<"i"<<endl;
}
void main()
{
Complex A(3,-5),B(5.6,7),C(0,0);
A.show();
C=A+B;
B.show();
C.show();
}
等等!!
相似回答