标题:这个是什么错误?
取消只看楼主
flysky102
Rank: 1
等 级:新手上路
帖 子:87
专家分:0
注 册:2007-12-26
 问题点数:0 回复次数:2 
这个是什么错误?
我按c primer上说的写了个计算中奖率的程序,可是编译时出现了问题,我的英文水平一般,也看不懂什么意思,大家帮我看看错哪了,程序如下:
# include <iostream>
long double pro(unsigned numbers,unsigned picks);
int main()
{ using namespace std;
  double a,b;
  cout<<"请输入总数字和可选数字个数\n";
  while((cin>>a>>b)&&b<=a)
  {cout<<"你的中奖率为:";
    cout<<pro(a,b);
    cout<<"输入Q以结束输入";
   }
   cout<<"bye\n";
   system("pause");
   return 0;
}
 long double pro(unsigned numbers,unsigned picks)
 { long double c=1.0;
   long double n;
   unsigned d;
   for(n=numbers,d=picks;d>0;n--,d--)
    c=c*n/d;
    return c;
}
   错误提示如下:
   9 C:\Documents and Settings\cface\桌面\新建文件夹\Untitled1.cpp [Warning] passing `double' for converting 1 of `long double pro(unsigned int, unsigned int)'
   9 C:\Documents and Settings\cface\桌面\新建文件夹\Untitled1.cpp [Warning] passing `double' for converting 2 of `long double pro(unsigned int, unsigned int)'
搜索更多相关主题的帖子: include numbers system double return 
2008-03-23 14:24
flysky102
Rank: 1
等 级:新手上路
帖 子:87
专家分:0
注 册:2007-12-26
得分:0 
可是我是仿照primer 第5版上说的一个程序编写的啊,搞不懂了。。。我学C++也是按论坛上的推荐买的primer这本书的

I think I could do better.
2008-03-23 14:44
flysky102
Rank: 1
等 级:新手上路
帖 子:87
专家分:0
注 册:2007-12-26
得分:0 
我把double a,b;修改为了int a,b后程序可以编译了,我用的是dev-c++编译器

I think I could do better.
2008-03-23 20:33



参与讨论请移步原网站贴子:https://bbs.bccn.net/thread-204846-1-1.html




关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.148149 second(s), 8 queries.
Copyright©2004-2024, BCCN.NET, All Rights Reserved