简单的C语言 出现错误

来源:百度知道 编辑:UC知道 时间:2024/05/12 17:16:01
#include <stdio.h>
main ()
{
int day=0,buy=1, sum=0;
do
{buy=2*buy;
sum=sum+0.5*buy;
day++;
printf("\n%d,%d,%d",buy,sum,day);
printf("\n平均花:%d钱",sum/day);
}while (buy<=100);
}

C:\Documents and Settings\123\桌面\Cpp1.cpp(7) : warning C4244: '=' : conversion from 'double' to 'int', possible loss of data
C:\Documents and Settings\123\桌面\Cpp1.cpp(12) : warning C4508: 'main' : function should return a value; 'void' return type assumed

Cpp1.obj - 0 error(s), 2 warning(s)

sum=sum+0.5*buy;
这句里面0.5×buy会导致其结果变为浮点数,你再把它赋值给整型肯定有警告啊。
另一个是因为你Main函数没有声音返回值类型。

int day=0,buy=1, sum=0;
while (buy<=100);
do
{buy=2*buy;
sum=sum+0.5*buy;
day++;
printf("\n%d,%d,%d",buy,sum,day);
printf("\n平均花:%d钱",sum/day);
}

sum=sum+0.5*buy 有问题吧