C#问题运算符的问题
usingSystem;usingSystem.Collections.Generic;usingSystem.ComponentModel;usingSystem.Da...
using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Text;
using System.Windows.Forms;
namespace chajian
{
public partial class Form1 : Form
{
public Form1()
{
InitializeComponent();
}
private void btnComputer_Click(object sender, EventArgs e)
{
double r, dblHalf, dblVol;
if(double.TryParse(txtR.Text,out r))
{
if (chkHalf.Checked) dblHalf = 0.5;
else dblHalf = 1;
if (rdoBall.Checked) dblVol= dblHalf * CalBall;
else if (rdoCub.Checked) dblVol = dblHalf * CalCube;
else if (rdoCylin.Checked) dblVol = dblHalf * CalCylinder;
}
else
{
MessageBox.Show("请选择立方体形状");
}
this.txtVol.Text = dblVol.ToString("f3");
}
double CalCylinder(double dblR)
{
return Math.PI * dblR * dblR * dblR;
}
static double CalBall(double dblR)
{
return 4.0 / 3.0 * dblR * dblR * dblR;
}
private double CalCube(double dblR)
{
return 8 * dblR * dblR * dblR;
}
}
}
这个程序运行出来的错误是 运算符“*”无法应用于“double”和“方法组”类型的操作数
if (rdoBall.Checked) dblVol= dblHalf * CalBall;
else if (rdoCub.Checked) dblVol = dblHalf * CalCube;
else if (rdoCylin.Checked) dblVol = dblHalf * CalCylinder;
“*”指的就是这个地方的*
大哥些按你们的意见改了下 出现了新的问题就是错误 1 使用了未赋值的局部变量“dblVol”
this.txtVol.Text = dblVol.ToString("f3"); 就是这个地方。。小弟先谢了 我是初学,,很多问题老出错、 展开
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Text;
using System.Windows.Forms;
namespace chajian
{
public partial class Form1 : Form
{
public Form1()
{
InitializeComponent();
}
private void btnComputer_Click(object sender, EventArgs e)
{
double r, dblHalf, dblVol;
if(double.TryParse(txtR.Text,out r))
{
if (chkHalf.Checked) dblHalf = 0.5;
else dblHalf = 1;
if (rdoBall.Checked) dblVol= dblHalf * CalBall;
else if (rdoCub.Checked) dblVol = dblHalf * CalCube;
else if (rdoCylin.Checked) dblVol = dblHalf * CalCylinder;
}
else
{
MessageBox.Show("请选择立方体形状");
}
this.txtVol.Text = dblVol.ToString("f3");
}
double CalCylinder(double dblR)
{
return Math.PI * dblR * dblR * dblR;
}
static double CalBall(double dblR)
{
return 4.0 / 3.0 * dblR * dblR * dblR;
}
private double CalCube(double dblR)
{
return 8 * dblR * dblR * dblR;
}
}
}
这个程序运行出来的错误是 运算符“*”无法应用于“double”和“方法组”类型的操作数
if (rdoBall.Checked) dblVol= dblHalf * CalBall;
else if (rdoCub.Checked) dblVol = dblHalf * CalCube;
else if (rdoCylin.Checked) dblVol = dblHalf * CalCylinder;
“*”指的就是这个地方的*
大哥些按你们的意见改了下 出现了新的问题就是错误 1 使用了未赋值的局部变量“dblVol”
this.txtVol.Text = dblVol.ToString("f3"); 就是这个地方。。小弟先谢了 我是初学,,很多问题老出错、 展开
3个回答
展开全部
他们的方式是正确地 我呢 就是不复制啦 (他们手快没办法,尤其是那个姓二的5级法师,比不过他)
我给你讲讲错误的原因吧
没错static double CalBall(double dblR)
{
return 4.0 / 3.0 * dblR * dblR * dblR;
}
这个CalBall方法确实有一个double类型的返回值可以用来计算
但是你也得完成这个方法的调用才可以
看见(double dblR)这个没 这个是这个方法的参数 必须给这个方法一个参数才可以完成对这个方法的调用
所以呢 如果只写CalBall()编辑器是找不到static double CalBall(double dblR) 这个方法得 你得传给他一个double的值才可以
你声明一个double类型的变量double aa=11.2;
然后CalBall(aa);就可以了 或者直接写CalBall(11.2);也是可以地
明白了吧
还有啊 注意了
static double CalBall()
和static double CalBall(double dblR)
是2个完全不同的方法 虽然名字一样 但却不是一个方法以此类推
static double CalBall(double dblR)
和static double CalBall(double dblR,double dblr2)也不是一个 这叫方法的重写(- -!好像是哦,这个理论。。比较差。。恩!应该是对的,相信我)
我给你讲讲错误的原因吧
没错static double CalBall(double dblR)
{
return 4.0 / 3.0 * dblR * dblR * dblR;
}
这个CalBall方法确实有一个double类型的返回值可以用来计算
但是你也得完成这个方法的调用才可以
看见(double dblR)这个没 这个是这个方法的参数 必须给这个方法一个参数才可以完成对这个方法的调用
所以呢 如果只写CalBall()编辑器是找不到static double CalBall(double dblR) 这个方法得 你得传给他一个double的值才可以
你声明一个double类型的变量double aa=11.2;
然后CalBall(aa);就可以了 或者直接写CalBall(11.2);也是可以地
明白了吧
还有啊 注意了
static double CalBall()
和static double CalBall(double dblR)
是2个完全不同的方法 虽然名字一样 但却不是一个方法以此类推
static double CalBall(double dblR)
和static double CalBall(double dblR,double dblr2)也不是一个 这叫方法的重写(- -!好像是哦,这个理论。。比较差。。恩!应该是对的,相信我)
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
private void btnComputer_Click(object sender, EventArgs e)
{
double r, dblHalf, dblVol;
dblVol = 0.0;
if(double.TryParse(txtR.Text,out r))
{
if (chkHalf.Checked) dblHalf = 0.5;
else dblHalf = 1;
if (rdoBall.Checked) dblVol= dblHalf * CalBall(r);
else if (rdoCub.Checked) dblVol = dblHalf * CalCube(r);
else if (rdoCylin.Checked) dblVol = dblHalf * CalCylinder(r);
}
else
{
MessageBox.Show("请选择立方体形状");
}
this.txtVol.Text = dblVol.ToString("f3");
}
{
double r, dblHalf, dblVol;
dblVol = 0.0;
if(double.TryParse(txtR.Text,out r))
{
if (chkHalf.Checked) dblHalf = 0.5;
else dblHalf = 1;
if (rdoBall.Checked) dblVol= dblHalf * CalBall(r);
else if (rdoCub.Checked) dblVol = dblHalf * CalCube(r);
else if (rdoCylin.Checked) dblVol = dblHalf * CalCylinder(r);
}
else
{
MessageBox.Show("请选择立方体形状");
}
this.txtVol.Text = dblVol.ToString("f3");
}
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
CalBall
CalCube
它们不都是方法么???你怎么可以直接拿它与别的变量相乘??
你的括号呢?晕...
这样儿乘就OK了:dblVol= dblHalf * CalBall(你的参数);
CalCube
它们不都是方法么???你怎么可以直接拿它与别的变量相乘??
你的括号呢?晕...
这样儿乘就OK了:dblVol= dblHalf * CalBall(你的参数);
本回答被提问者采纳
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询