C++程序练习集.docx

上传人:b****8 文档编号:11268771 上传时间:2023-02-26 格式:DOCX 页数:26 大小:18.02KB
下载 相关 举报
C++程序练习集.docx_第1页
第1页 / 共26页
C++程序练习集.docx_第2页
第2页 / 共26页
C++程序练习集.docx_第3页
第3页 / 共26页
C++程序练习集.docx_第4页
第4页 / 共26页
C++程序练习集.docx_第5页
第5页 / 共26页
点击查看更多>>
下载资源
资源描述

C++程序练习集.docx

《C++程序练习集.docx》由会员分享,可在线阅读,更多相关《C++程序练习集.docx(26页珍藏版)》请在冰豆网上搜索。

C++程序练习集.docx

C++程序练习集

#include

usingnamespacestd;

//*********************************************

classClock

{

public:

voidSetClock(inth=0,intm=0,ints=0)

{

hour=h;

minute=m;

second=s;

}

voidShowClock()

{

cout<

"<

"

<

}

private:

inthour;

intminute;

intsecond;

};

intmain()

{

ClockmyClock;

cout<<"默认时间为:

"<

myClock.SetClock();

myClock.ShowClock();

cout<<"现在时间:

"<

myClock.SetClock(8,30,30);

myClock.ShowClock();

return0;

}

#include

usingnamespacestd;

//Point类声明

classPoint

{

public:

//设置点坐标

voidsetPoint(doublex0,doubley0);

//显示点坐标

voidshowPoint();

private:

doublex;//横坐标

doubley;//纵坐标

};

voidPoint:

:

setPoint(doublex0=0,doubley0=0)

{

x=x0;

y=y0;

}

voidPoint:

:

showPoint()

{

cout<<"点的坐标为:

("

<

<

}

intmain()

{

Pointp1,p2;

doublex,y;

p1.setPoint(1,2);

p1.showPoint();

cout<<"请输入点的坐标:

";

cin>>x>>y;

p2.setPoint(x,y);

p2.showPoint();

return0;

}

#include

usingnamespacestd;

classPoint

{

public:

Point(intx0=0,inty0=0):

x(x0),y(y0)

{

CountP++;

}

Point(Point&p):

x(p.x),y(p.y)

{

CountP++;

}

~Point()

{

CountP--;

}

staticintgetCount()

{

returnCountP;

}

private:

intx;

inty;

staticintCountP;

};

intPoint:

:

CountP=0;

intmain()

{

Pointp1(0,3),p2(p1);

cout<

cout<

cout<

:

getCount()<

return0;

}

//功能:

定义复数类,给出构造函数、两个复数相加

#include

usingnamespacestd;

classComplex

{

public:

Complex(doubler=0,doublei=0)//构造函数

{

real=r;

imag=i;

}

voidshow()//显示函数

{

cout<<"("<

}

voidadd(ComplexC1,ComplexC2)//函数加法

{

real=C1.real+C2.real;

imag=C1.imag+C2.imag;

}

private:

doublereal;//实部

doubleimag;//虚部

};

intmain()

{

ComplexC1(1,2),C2(2,3),C3;

C3.add(C1,C2);

cout<<"两复数之和为:

";

C3.show();

return0;

}

//名称:

0402

//功能:

定义复数类,给出构造函数、两个复数相加、两个复数相减、以(a,b)格式输出的成员函数

//作者:

薛小超

//日期:

2012.04.13

//*****************************************************************************************

#include

usingnamespacestd;

classComplex

{

public:

Complex(doubler=0,doublei=0);//构造函数

voidset(doubler,doublei);//设置函数

voidshow();//显示函数

voidadd(ComplexC1,ComplexC2);//函数加法

voidsub(ComplexC1,ComplexC2);//函数减法

private:

doublereal;//实部

doubleimag;//虚部

};

Complex:

:

Complex(doubler,doublei)//构造函数

{

real=r;

imag=i;

}

voidComplex:

:

set(doubler,doublei)//设置函数

{

real=r;

imag=i;

}

voidComplex:

:

show()//显示函数

{

cout<<"("<

<

}

voidComplex:

:

add(ComplexC1,ComplexC2)//函数加法

{

real=C1.real+C2.real;

imag=C1.imag+C2.imag;

}

voidComplex:

:

sub(ComplexC1,ComplexC2)//函数减法

{

real=C1.real-C2.real;

imag=C1.imag-C2.imag;

}

intmain()

{

ComplexC1(0,0),C2(0,0),C3(0,0);

doubler1,i1;

doubler2,i2;

cout<<"请输入第一个复数的实部和虚部:

";

cin>>r1>>i1;

cout<<"第一个复数为:

";

C1.set(r1,i1);

C1.show();

cout<<"请输入第二个复数的实部和虚部:

";

cin>>r2>>i2;

cout<<"第二个复数为:

";

C2.set(r2,i2);

C2.show();

cout<<"两复数之和为:

";

C3.add(C1,C2);

C3.show();

cout<<"两复数之差为:

";

C3.sub(C1,C2);

C3.show();

return0;

}

#include

usingnamespacestd;

voidSwap(int&a,int&b)

{

intt;

t=a;

a=b;

b=t;

}

inlineintadd(intm,intn)

{

returnm+n;

}

inlinedoublemax(doublea,doubleb)

{

returna>=b?

a:

b;

}

intmain()

{

intx(5);

inty(10);

doublea=10.5,b=2.4;

cout<<"x="<

Swap(x,y);

cout<<"x="<

cout<

cout<

return0;

}

#include

usingnamespacestd;

longsum(intn)

{

if(n==1)

return1;

else

returnsum(n-1)+n;

}

intmain()

{

intn;

cout<<"请输入整数n:

";

cin>>n;

cout<<"1+...+"<

return0;

}

#include

usingnamespacestd;

intsum(intn)

{

inti;

ints=0;

for(i=1;i<=n;i++)

{

s+=i;

}

returns;

}

intmain()

{

intn;

cout<<"请输入整数n:

";

cin>>n;

cout<<"1+...+"<

return0;

}

#include

usingnamespacestd;

longfac(intn)

{

longf;

if(n<0)

{

cout<<"n<0,dataerror!

"<

}

elseif(n==0)

f=1;

else

f=fac(n-1)*n;

returnf;

}

intmain()

{

intx;

cout<<"请输入正整数n:

";

cin>>x;

cout<

="<

return0;

}

//名称:

求圆柱体的表面积和体积

//功能:

求圆柱体的表面积和体积

//作者:

薛小超

//日期:

2012.5.4

//****************************************************************************************

#include

usingnamespacestd;

constdoublePI(3.14);//声明常量圆周率PI(3.14)

voidcompute(doubler,doubleh,double&s,double&v)//求圆柱体的表面积和体积函数

{

s=2*PI*r*(r+h);//s为圆柱体的表面积,r为圆柱体的体积,h为圆柱体高

v=PI*r*r*h;//v为圆柱体的体积

}

intmain()

{

doubler=1,h=2,s,v;//s为圆柱体的表面积,r为圆柱体的体积,h为圆柱体高,v为圆柱体的体积

compute(r,h,s,v);//圆柱体的表面积和体积函数实现

cout<<"圆柱体的表面积为:

";

cout<

cout<<"圆柱体的体积为:

";

cout<

return0;

}

#include

constdoublePI(3.14);

usingnamespacestd;

classCircle

{

private:

//半径

doubleradius;

public:

//设置半径

voidsetCircle(doubler=0);

//返回面积

doublegetArea();

};

voidCircle:

:

setCircle(doubler)

{

radius=r;

}

doubleCircle:

:

getArea()

{

returnPI*radius*radius;

}

intmain()

{

Circlecir1;

cir1.setCircle

(2);

cout<<"圆的面积为:

"<

return0;

}

#include

usingnamespacestd;

voidSwap(int&a,int&b)

{

intt;

t=a;

a=b;

b=t;

}

intmain()

{

intx(5);

inty(10);

cout<<"x="<

Swap(x,y);

cout<<"x="<

return0;

}

//输入三角形的三条边,求其各角度

#include

#include

usingnamespacestd;

constdoublePI=3.14;

voidoutputAngle(doublea,doubleb,doublec);

intmain()

{

doublea;

doubleb;

doublec;

cout<<"请输入三角形的三条边:

";

cin>>a>>b>>c;

outputAngle(a,b,c);

return0;

}

voidoutputAngle(doublea,doubleb,doublec)

{

doubleangleA;

doubleangleB;

doubleangleC;

angleA=acos((b*b+c*c-a*a)/(2*b*c));

angleB=acos((a*a+c*c-b*b)/(2*a*c));

angleC=PI-angleA-angleB;

cout<<"三边对应的角度为:

"<

cout<

cout<

cout<

}

#include

usingnamespacestd;

intmain()

{

//字母的个数

inta=0;

//数字的个数

intb=0;

//输入的一个字符

charx;

cout<<"请输入字母或数字(以#作为结束的标志):

";

while(true)

{

cin>>x;

//结束符

if(x=='#')

{

break;

}

//统计字母字符

if(x>='A'&&x<='Z'||x>='a'&&x<'z')

{

a++;

}

//统计数字字符

elseif(x>='0'&&x<='9')

{

b++;

}

}

cout<<"字母字符:

"<

cout<<"数字字符:

"<

return0;

}

#include

usingnamespacestd;

doublecountsalary(double);

intmain()

{

inthours;

cout<<"请输入员工工作时间:

";

cin>>hours;

cout<<"员工工资为:

"<

return0;

}

doublecountsalary(doublehours)

{

constdoubleHOURSRATE=50;

doublesalary;

//计算员工工资

if(hours<=40)

salary=hours*HOURSRATE;

else

salary=(hours-40)*1.5*HOURSRATE+40*HOURSRATE;

returnsalary;

}

#include

usingnamespacestd;

doublecountsalary(doublehours)

{

constdoubleHOURSRATE=50;

doublesalary;

//计算员工工资

if(hours<=40)

salary=hours*HOURSRATE;

else

salary=(hours-40)*1.5*HOURSRATE+40*HOURSRATE;

returnsalary;

}

intmain()

{

inthours;

cout<<"请输入员工工作时间:

";

cin>>hours;

cout<<"员工工资为:

"<

return0;

}

#include

usingnamespacestd;

doublecountsalary(doublehours,doublehoursrate)

{

doublesalary;

if(hours<=40)

salary=hours*hoursrate;

else

salary=(hours-40)*1.5*hoursrate+40*hoursrate;

returnsalary;

}

intmain()

{

inthours,hoursrate;

cout<<"请输入员工工作时间:

";

cin>>hours;

cout<<"员工正规时间下每小时的报酬:

";

cin>>hoursrate;

cout<<"员工工资为:

"<

<

return0;

}

//名称:

00002

//功能:

编程实现求二元一次方程的根

//作者:

薛小超

//日期:

2012·3·6

//*****************************************************************

#include

#include

usingnamespacestd;

intmain()

{

doublea,b,c;

doublex1,x2;

//方程输入

cout<<"请输入a,b,c:

";

cin>>a>>b>>c;

//方程求解

doubledelta=b*b-4*a*c;

if(delta<0)//delta<0

{

cout<<"方程无实数解"<

}

elseif(delta==0)//delta==0

{

cout<<"方程的根为:

"<<(-b)/(2*a)<

}

else

{

x1=(-b+sqrt(b*b-4*a*c))/(2*a);

x2=(-b-sqrt(b*b-4*a*c))/(2*a);

cout<<"方程的根为:

x1="<

}

return0;

}

//名称:

00004

//功能:

判断成绩的档次(switch/case练习)

//作者:

薛小超

//日期:

2012·3·6

#include

usingnamespacestd;

intmain()

{

chargrade;

cout<<"Inputgradeofscore(a_d):

";

cin>>grade;

switch(grade)

{

case'a':

cout<<"85_100"<

case'b':

cout<<"75_84"<

case'c':

cout<<"60_74"<

case'd':

cout<<"0_60"<

default:

cout<<"输入错误;请重新输入"<

}

return0;

}

//名称:

练习求n的阶乘

//功能:

练习求n的阶乘

//作者:

薛小超

//日期:

2012.3.7

#include

usingnamespacestd;

intmain()

{

intn,i;

longfac;//阶乘

cout<<"inputn:

";

cin>>n;

//初始化

fac=1;

i=1;

//求n!

while(i<=n)

{

fac*=i;

i++;

}

cout<

="<

return0;

}

//名称:

课上练习

//功能:

输入公历年月,判断是否闰年,该月有多少天

//作者:

薛小超

//日期:

2012.3.9

#include

usingnamespacestd;

intmain()

{

boolleep;

inty,m,d;//y代表年;m代表月;d代表天

cout<<"请输入年月日:

";

cin>>y>>m;

leep=y%4==0&&y%100!

=0||y%400==0;

if(m==4||m==6||m==9||m==11)

{

d=30;

}

elseif(m==2)

{

if(leep)

{

d=28;

}

else

{

d=29;

}

}

else

{

d=31;

}

if(leep)

{

cout<<"输入的年份是闰年"<

}

else

{

cout<<"输入的年份是平年"<

}

cout<<"输入的月份天数为:

"<

return0;

}

//功能:

求100以内的随机数

//日期:

2012·03·26

//******************************

#include

#include

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 经管营销 > 销售营销

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1