一名兽医想要记录他所治疗的各种类型的狗及治疗信息,尤其想了解不同的病证对带斑点的狗和不带斑点的狗所产生的影响。为该兽医设计一个类体系,要求记录狗的品种(breed),身高(height),体重(weight),颜色(colour)等信息。为斑点狗和不带斑点的狗分别设计不同的类。在下面的程序中使用你将定义的类:
int main(void)
{//定义一个白色的Dalmatian斑点狗,它身高24,体重60,斑点为红色
spotted_dog redSpot("Damlmatian",24,60,"white","red");
//定义一个黄色的Labrador Rectriever无斑点狗,它身高30,体重为40
unspotted_dog rover("Labrador Retriever",30,40,"yellow");
redSpot.show_breed();
redSpot.spot_info();
rover.show_breed();
return 0;
}
#include <iostream>
#include <cmath>
#include <cstring>
using namespace std;
class unspotted_dog{
protected:
char breed[30];
int height;
int weight;
char colour[10];
public:
unspotted_dog(char* breed,float height,float weight,char* colour)
{strcpy(this->breed,breed);
this->height=height;
this->weight=weight;
strcpy(this->colour,colour);
}
virtual void show_breed()=0;
};
void unspotted_dog::show_breed()
{cout<<"狗的品种为:"<<breed;}
class spotted_dog:public unspotted_dog{
char spotcolour[10];
public:
spotted_dog(char* breed,int height,int weight,char* colour,char* spotcolour)
{strcpy(this->breed,breed);
this->height=height;
this->weight=weight;
strcpy(this->colour,colour);
strcpy(this->spotcolour,spotcolour);
}
void show_breed()
{cout<<"无斑狗的品种为:"<<breed;}
void spot_info() {cout<<"斑点为:"<<colour;}
};
int main(void)
{spotted_dog redSpot("Damlmatian",24,60,"white","red");
unspotted_dog rover("Labrador Retriever",30,40,"yellow");
redSpot.show_breed();
redSpot.spot_info();
rover.show_breed();
return 0;
}
帮我看看这程序错哪,谢谢
请帮我看看这个c++题目#define A(n) 2*n+1,则表达式A(2+3)的值是【1...
A(n) 2*(n)+1
C++题目,有大佬过来看看么 定义学生类。 (1)类名:STUDENT;
当然可以啊。相反,如果你把类的所有代码都内联定义到头文件中,那么所有需要用到这个类的CPP文件实际上都包含了更多的代码,编译器编译每个这样的CPP文件时都编译了这些代码。而分开定义,这些代码就只被编译了一遍,也就是在编译实现那个类的CPP文件时。在特殊情况下确实可以的假如我有一个类a被几百个...
C++难题!!!
题目如下:现有若干个集合的数据,每个数据集合可以自选一个指标参加排序。这些指标包含如下四种:Min ,取集合中元素的最小值 Max ,取集合中元素的最大值 Mean ,取集合中元素的平均值,平均值的计算公式为: (V1+V2+…+Vn) \/ n Median ,取集合中元素的中值,中值的计算公式为: (Vmin+Vmax)...
请各位C++高手帮我看一下这道简单的C++选择题.
不能带任何参数。析构函数与 构造函数 相反,当对象脱离其 作用域 时(例如对象所在的函数已调用完毕),系统自动执行析构函数。析构函数往往用来做“清理善后”的工作(例如在建立对象时用new开辟了一片内存空间,应在退出前在析构函数中用delete释放)。
c++ OOP题目。求大神。求详解。
答案是:B a(4) - 1 次。这个定义了一个变量a,用4初始化a (可以知道AB类中至少定义了一个成员,该成员可被构造函数初始化)b[3] - 3次。 这个定义了一个数组b,有三个元素,那么b[3]就是初始化了3个AB对象,因此被调用3次。p[2] - 0 次。 这个定义一个指针数组(2个元素的数组...
这是一个C++二级考试的题,请高手指教一下
得到24,并且该表达式返回第二个表达上的值,也就是24,因此x==24。同理可得B中,z==8,x==24,y==24 C中x==8 y==8 z==8 D中可以把.x=(y=z=8)看成是表达式1,4*6看成是表达式2,因此整个语句x=(y=z=8),4*6;的返回值是24..所以先执行表达式1得x==8 y==8 z==8 ...
帮忙看几道题C++的简单题目,求答案,多谢了
3.不能 4.6 答案为6的原因,这6个有效字符分别为 a b \\01 8 c \\n 如果定义 char str[ ] = "ab\\018c\\n"; 计算结果str的有效长度当然是6。为何分解为 \\01 8,而不是\\0 1 8 或者 \\018 ,转义字符\\在遇到0时,认为这是八进制的ASCII码,自然分解为 \\01 ,而8不是...
...要编写comp函数,有点懵逼。。。有没有人来帮我看看,题目如图...
这个是C语言自带的快排算法,comp函数就是你要排序的方式 函数原型是 int comp(const void* a,const void *b);大体的意思就是 如果你要从大到小排序,那就return *(int* a) - *(int* b)如果你要从小到大排序,那就return *(int* b) - *(int* a)当然可以更加灵活,比如按照结构体中的...
c++题目,给个代码,谢谢
C++具体代码如下:include<iostream> include<algorithm> using namespace std;int main() { int n;cin >> n;int a[n];for (int i = 0; i < n; ++i)cin >> a[i];sort(a, a + n, greater<int>()); \/\/ 降序排列 int ans = -1; \/\/ 满足条件的和,不存在则输出-1 for (...
两道C++题目 大家帮我看看啊
c:d,c=3小于d=4,所以返回c,也就是3,这样变成a