华中科技大学 刷题C++ 题目 答案

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
using namespace std;
/**********Program**********/
int min(int a,int b,int c){
int m=a;
if(b<m)
m=b;
if(c<m)
m=c;
return m;
}
/********** End **********/
void main(void)
else if(s[i]>='V'&&s[i]<='Z'||s[i]>='v'&&s[i]<='z')
en[i]=s[i]-21;
else en[i]=s[i];
i++;
return en[i-1];
}
/********** End **********/
void main()
{
char s;
do
{
#include <iostream>
using namespace std;
class shape{
sum=sum+i;
count++;
a=a/10;
}
/********** End **********/
cout<<")"<<endl;
cout<<num<<"是一个"<<count<<"位数"<<endl;
cout<<num<<"各位数字之和="<<sum<<endl;
}
题目:
电文加密的算法是:将字母A变成F,a变成f,B变成G,b变成g,依次类推,
const double PI=3.14159;
/**********Program**********/
class Point{
int x,y;
public: Point(){x=y=0;
}
Point(int xx,int yy){
x=xx;
y=yy;
}
SetP(int xx,int yy){
x=xx;
#include <iostream>
using namespace std;
/**********Program**********/
char s[10];
int i=0;
char encryptionCH(char x)
{
s[i]=x;
char en[10];
if(s[i]>='A'&&s[i]<='U'||s[i]>='a'&&s[i]<='u')
当l、w、h仅有一个为0时,判定形状为长方形,返回值为2;
当l、w、h仅有一个不为0时,判定形状为线段,返回值为3;
当l、w、h均为0时,判定形状为点,返回值为4;
输出结果见图:样张.JPG
-------------------------------------------------------*/
p1.SetP(pp.getX(),pp.getY());
radius=r;
}
SetCC(Point pp,int r){
p1.SetP(pp.getX(),pp.getY());
radius=r;
}
double getArea();
void show();
}; double Circle::getArea()
/**********Program**********/
char s[10];
int i=0;
char encryptionCH(char x)
{
s[i]=x;
char en[10];
if(s[i]>='A'&&s[i]<='U'||s[i]>='a'&&s[i]<='u')
en[i]=s[i]+5;
和表示圆心坐标的点类对象。圆类成员函数包括构造函数、求面积的函数和输出显示圆心
坐标及圆半径的函数。
输出结果见样张.JPG
-------------------------------------------------------*/
#include <iostream>
using namespace std;
电文加密的算法是:将字母A变成F,a变成f,B变成G,b变成g,依次类推,
V变成A,W变成B,等等。其他字符不变。
从键盘输入一串电文,用函数将其加密,再在主函数中输出加密后的串。
输出结果见图:样张.JPG
-------------------------------------------------------*/
(每年各月天数分别为31,28,31,30,31,30,31,31,30,31,30,31,闰年2月为29天,
闰年的条件year%4==0&&year%100!=0)||year%400==0))
输出结果见样张.JPG
-------------------------------------------------------*/
{
int a,b,c;
cout<<"输入三个整数a,b,c=";
cin>>a>>b>>c;
cout<<"最小值="<<min(a,b,c)<<endl;
}
题目:
完成如下分段函数,函数见图:函数.JPG
输出结果见图:样张.JPG
-------------------------------------------------------*/
V变成A,W变成B,等等。其他字符不变。
从键盘输入一串电文,用函数将其加密,再在主函数中输出加密后的串。
输出结果见图:样张.JPG
-------------------------------------------------------*/
#include <iostream>
using namespace std;
int count; //存放整数num的位数
cout<<"num=";
cin>>num;
cout<<"( ";
/**********Program**********/
count=0;
sum=0;
int i,a;
a=num;
while(a!=0)
{
i=abs(a%10);
cout<<i<<' ';
c2.show();//显示c2
cout<<"圆的面积="<<c2.getArea()<<endl;
return 0;
}
题目:定义shape类,有三个表示长度的整型数据成员,分别为l、w、h。
编一个基于对象的程序,写一个成员函数is,可判定其形状:
当l、w、h均不为0时,判定形状为柱体,返回值为1;
if (month==9&&day<=30) {n=243+day+i;k=1;}
if (month==10&&day<=31){n=273+day+i;k=1;}
if (month==11&&day<=30) {n=304+day+i;k=1;}
if (month==12&&day<=31) {n=334+day+i;k=1;}
s=cin.get();
cout<<encryptionCH(s);
}while(s!='\n');
}
题目:
定义一个日期类Date,包含年、月、日三个数据成员(int),定义带有3个参数的构造函数,
以及一个求日期是当年的第几天的成员函数和输出日期的成员函数,
日期的显示格式为年/月/日。编写主函数进行测试。
#include <iostream>
using namespace std;
/**********Program**********/
class Date{
int year,month,day;
public:
Date(){
year=0;
month=0;
day=0;
}
Date(int Y,int M,int D){
#include <iostream>
#include <cmath>
using namespace std;
int main(){
double x,fx;
cout<<"请输入x:";
cin>>x;
/**********Program**********/
if(x>0&&x<=1)
fx=cos(x)+3;
}
int main()
{
Point p1(9,2),p2; //9为x坐标,2为y坐标
Circle c1(p1,7),c2; //7为半径p1为圆心点
c1.show();
cout<<"圆的面积="<<c1.getArea()<<endl;
p2.SetP(1,1);//改变圆心坐标
c2.SetCC(p2,4);//以p2为圆心坐标,改变c2的半径
{
char s;
do
{
s=cin.get();
cout<<encryptionCH(s);
}while(s!='\n');
}
题目:
编写一个函数min,返回三个整数形参中的最小值。
-------------------------------------------------------*/
#include <iostream>
d1.show();
cout<<d1.getDay()<<endl;
d2.SetD(2012,3,1); //d2为2012年3月1日
d2.show();
cout<<d2.getDay()<<endl;
return 0;
}
题目:
定义一个点类Point包括x坐标和y坐标(int)。定义一个圆类Circle,有数据成员半径
if (month==5&&day<=31) {n=120+day+i;k=1;}
if (month==6&&day<=30) {n=151+day+i;k=1;}
if (month==7&&day<=31) {n=181+day+i;k=1;}
if (month==8&&day<=31) {n=212+day+i;k=1;}
if (k=1)
return n;
}
/********** End **********/
void Date::show()
{
cout<<year<<"/"<<month<<"/"<<day<<endl;
}
int main()
{
Date d1(2009,2,1),d2; //d1为2009年2月1日
if(x>1&&x<1.6)
fx=sin(x)+x;
if(x>1.6&&x<3)
fx=1+sqrt(x);
/********** End **********/
cout<<"当x="<<x<<"时,函数值为"<<fx<<endl;
return 0;
}
题目:
从键盘上输入任意整数,逆序输出其各位数字,同时求出其位数及各位数字之和。
y=yy;
}
int getX(){
return x;
} int getY()
{
return y;
}
};
class Circle{
double radius; Point p1;
public: Circle(){
p1.SetP(0,0);
radiuBiblioteka Baidu=0;} Circle(Point pp,int r){
year=Y;
month=M;
day=D;
}
SetD(int Y,int M,int D){
year=Y;
month=M;
day=D;
}
int getDay(); void show(); };
int Date::getDay(){
int n,i,k=0;
if ((year%100!=0&&year%4==0)||year%400==0)i=1;
en[i]=s[i]+5;
else if(s[i]>='V'&&s[i]<='Z'||s[i]>='v'&&s[i]<='z')
en[i]=s[i]-21;
else en[i]=s[i];
i++;
return en[i-1];
}
/********** End **********/
void main()
else i=0;
if (month==1&&day<=31){ n=day;k=1;}
if (month==2&&day<=(28+i)){ n=31+day;k=1;}
if (month==3&&day<=31) {n=59+day+i;k=1;}
if (month==4&&day<=30) {n=90+day+i;k=1;}
{
return PI*radius*radius;
}
/********** End **********/
void Circle::show()
{
cout<<"圆心X坐标="<<p1.getX()<<",圆心Y坐标="<<p1.getY()<<endl;
cout<<"圆半径="<<radius<<endl;
输出结果见图:样张.JPG
-------------------------------------------------------*/
#include <iostream>
using namespace std;
void main(void)
{
int num;
int sum; //存放整数num各位数字之和
相关文档
最新文档