一个C++程序的计算结果出错,一般会是吗问题?求高手解决

程序给运行,就是结果不对代码如下:#include<iostream.h>classhigh{protected:doubleh;public:high();high(d... 程序给运行,就是结果不对
代码如下:
#include<iostream.h>
class high
{
protected:
double h;
public:
high();
high(double h1) {h=h1;}
virtual void disparea()
{
cout<<"高度="<<h<<endl;
}
};
class cuboid:public high
{
private:
double len,wid;
public:
cuboid(double l,double w,double h):high(h)
{len=l;wid=w;h=h;};
void disp()
{
cout<<"长方体:"<<endl;
cout<<"长度="<<len;
cout<<"宽度="<<wid;
cout<<"高度="<<h;
cout<<"体积="<<len*wid*h<<endl;

}
};

class cylinder:public high
{
private:
double r;
public:cylinder(double r1=0,double h1=0):high(h1) {r=r1;}
void disparea()
{
cout<<"圆柱体:"<<endl;
cout<<"半径="<<r;
cout<<"高度="<<h;
cout<<"体积="<<r*r*3.1415*h<<endl;

}
};
void main()
{
double l,w,h,r;
cout<<"请输入长方体的长,宽,高:";
cin>>l,w,h;
cout<<"请输入圆的半径:";
cin>>r;
high *p;
cuboid cu(l,w,h);
cylinder cy(r,h);
p=&cu;
p->disparea();
p=&cy;
p->disparea();

}
展开
 我来答
百度网友c2602d6
2012-04-24 · 超过34用户采纳过TA的回答
知道答主
回答量:107
采纳率:0%
帮助的人:96.6万
展开全部
要么是没给变量赋初始值,或者需要置0的没有置0,具体问题要具体看,你可以用F10一句句去检测,F10,F11按多了,自然就知道了,或者你把程序贴出来看看。一般是变量赋值问题
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
百度网友e44e26db9
2012-04-24 · 超过19用户采纳过TA的回答
知道答主
回答量:72
采纳率:0%
帮助的人:55.9万
展开全部
那肯定是某个地方出现错误了
很多问题 你要一个一个检查
一般在循环或者函数 或者程序 等等地方设置输出函数 来对照检查
或者还有让程序执行到某一步 一步一步来看
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
woleiwei
2012-04-24 · 超过28用户采纳过TA的回答
知道答主
回答量:150
采纳率:0%
帮助的人:88.2万
展开全部
把代码贴出来看看啦

你第2个类的那个函数不是虚函数啊,要和虚函数同名!
更多追问追答
追问
那怎么改?
追答
改成与父类同名的虚函数
本回答被提问者采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
wanfustudio
2012-04-24 · TA获得超过1万个赞
知道大有可为答主
回答量:5513
采纳率:100%
帮助的人:3778万
展开全部
逻辑不对呗
这好比上小学时的数学解答题,你也写出了一个计算过程和结果,只是不是答案
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
沧海雄风2009
2012-04-24 · TA获得超过1.1万个赞
知道大有可为答主
回答量:8525
采纳率:79%
帮助的人:2875万
展开全部
各种问题 你这样问 没什么意义

起码可以给你说出100种计算结果出错的可能

你最好把你的代码贴出来
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 更多回答(3)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式