int转换成double的问题
在c#中,classProgram{intnumber1=1;intnumber2=2;publicstringShowAvg(){doubleavg=(number1+...
在c#中,class Program
{
int number1 = 1;
int number2 = 2;
public string ShowAvg()
{
double avg = (number1 + number2)/2;
return "平均数是:"+avg ;
}
static void Main(string[] args)
{
Program program = new Program();
Console.WriteLine(program.ShowAvg());
Console.ReadKey();
输出的结果应该是1.5,可为什么是1呢??int型不是可以自动转换成double型吗? 展开
{
int number1 = 1;
int number2 = 2;
public string ShowAvg()
{
double avg = (number1 + number2)/2;
return "平均数是:"+avg ;
}
static void Main(string[] args)
{
Program program = new Program();
Console.WriteLine(program.ShowAvg());
Console.ReadKey();
输出的结果应该是1.5,可为什么是1呢??int型不是可以自动转换成double型吗? 展开
3个回答
展开全部
return "平均数镇掘是:"+avg ;改为御轮核 return "平桐源均数是:"+(double)avg +“ ”;就行了
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
问题在这里
number1和number2都厅伏是int类型的
number1+number2=3
然后 3/含陆2 这里是int类型的除法,也就是整除,返回的扮老携是int类型的,也就是1
要想得到你预期的结果可以写成
double avg = (double)(number1 + number2)/2;
number1和number2都厅伏是int类型的
number1+number2=3
然后 3/含陆2 这里是int类型的除法,也就是整除,返回的扮老携是int类型的,也就是1
要想得到你预期的结果可以写成
double avg = (double)(number1 + number2)/2;
本回答被提问者采纳
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询