c语言求n的阶乘小白求秒回,这里哪错了,谢谢

C语言问题,求大神改错,谢谢拉,我是小白。。_百度知道
C语言问题,求大神改错,谢谢拉,我是小白。。
鸡兔同笼一共有40只脚,求鸡兔各有多少只,总共有多少种组合。#include&stdio.h&void main(){int i,j,m=0;double 畅碃扳度殖道帮权爆护n;for(i=1;i&=20;i++){n=(40-2*i)/4.0;if(n%1==0){m++;printf(&鸡有=%d只\n兔子有=%if只\n&,i,n);}}printf(&一共有=%d种组合&,m);}该怎么改呢,就是判断是否为整数那块。。。谢谢拉
提问者采纳
if(n-(int)n&0.000001)你的程序改成:#include&stdio.h&void&main(){&int&i,j,m=0;&double&n;&for(i=0;i&=20;i++)& & & & & & & & & & & & & & & & & & //此处有问题,鸡的数量可以为0吧&{& n=(40-2*i)/4.0;& if(n-(int)n&0.000001)& & & & & & & & & & & & & & //这样之后就可以判断n是否是整数& {& &m++;& &printf(&鸡有=%d只\n兔子有=%d只\n&,i,int(n));& & & & & & //输出整形的比较好& }&}&printf(&一共有=%d种组合&,m);}要是都必须至少有一个的话就把&for(i=0;i&=20;i++)&改成for(i=1;i&20;i++)&&
if(n-(int)n&0.000001)
请问这句话是什么意思呢,我是初学者,不懂,可以解释下吗,int我知=知道输出的是整型,那为什么要小于0.000001呢?
因为你把n设成了double类型的double和float都是有精度的,在7,8位之后就不准了(就不是你想要的0了)它们在比较大小时不能直接比较因此只要误差小于0.000001就能说明它是整数了
int(n)是取整数吗?
是啊,直接舍弃小数部分
提问者评价
来自团队:
其他类似问题
为您推荐:
其他4条回答
从题目来看,鸡兔同笼表示应该有两种动物,这是一个数学上的不定方程问题,如果有i表示鸡,那么兔子的个数就是 (40 - 2i)/4 (这个利用普通的数学知识就应该可以得到了)下面要确定的就是 (40- 2i)/4 必须是个整数才有意义。所以只需要判断 (40 - 2i ) % 4 == 0 是否成立就可以了,成立的时候 i就是鸡的个数,(40-2i)/4 就是兔子的个数完整的程序可以写成 #include&stdio.h&void main(){int i,m =0; for(i=1;i&20;i++){ if((40-2*i) % 4 ==0){m++;printf(&鸡有=%畅碃扳度殖道帮权爆护d只\n兔子有=%d只\n&, i, (40-2*i)/4);}}printf(&一共有=%d种组合&,m);}
其实都各有各的方法啊!而且你题目有说鸡兔数能为0吗?你的for(i=1;i&=20;i++)是说明了兔可以为0,而鸡不可以啊~你可以对for(i=1;i&=20;i++)这里进行修改,得到你想要的结果#include&stdio.h&void&main(){int&i,m=0,n;float&j;for(i=1;i&20;i++){n=(40-2*i);j=n%4;if(j==0){m++;printf(&鸡有=%d只\t兔子有=%d只\n&,i,n);}}printf(&一共有=%d种组合&,m);}
可以用方程解答我的方法比楼上的简单程序如下#include&stdio.h&void&main(){int&i,j,m=0,&n;for(i=1;i&=20;i++)for(n=1;n&=20;n++){if(n*4==(40-2*i)){m++;printf(&鸡有=%d只&兔子有=%i只\n&,i,n);}}printf(&一共有=%d种组合\n&,m);}
请问这个结构叫什么呢,我是初学者不懂,可以解释下吗,有两个for循环,为什么第一个for没有{}呢,是因为第一个for包含了下面一个for么,第一个for似乎可以改成n&=10吧,求指导,谢谢
这是循环嵌套,两层循环
二元二次方程都弱爆了。鸡兔同笼新算法:已知鸡和兔15只,一共有40一只脚,问鸡和兔各有几只,算法:假如鸡和兔训练有素,一吹口哨,他们就抬起一只脚(40-15=25)。再吹一声他们又抬起一只脚,(25-15=10),这时鸡都坐在地上了,兔子还用两只脚站着。所以兔子有(10/2=5)只,鸡有(15-5=10)只。 望采纳o(∩_∩)o 哈哈
c语言的相关知识
等待您来回答
下载知道APP
随时随地咨询
出门在外也不愁小白求调教,又是一个hello world的问题,真的麻烦大家了,急急_c语言吧_百度贴吧
&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&签到排名:今日本吧第个签到,本吧因你更精彩,明天继续来努力!
本吧签到人数:0成为超级会员,使用一键签到本月漏签0次!成为超级会员,赠送8张补签卡连续签到:天&&累计签到:天超级会员单次开通12个月以上,赠送连续签到卡3张
关注:318,057贴子:
小白求调教,又是一个hello world的问题,真的麻烦大家了,急急收藏
我怎么在return前面加上getchar()也不管用?还是看不到运算结果,一闪而过,我反反复复看了好多遍一点错误都没有,我自学才2天莫嘲笑。谢谢大哥大姐了。//计算圆的面积#include&stdio.h&int main(void){printf(&计算圆的周长与面积&);float radius=0.0f;float diamater=0.0f;float cricumference=0.0f;float area=0.0f;float pai=3.f;printf(&\n\n请输入待测圆的直径d=&);scanf(&%f&,&diamater);radius=diamater/2.0f;cricumference=radius*2.0f*area=radius*radius*printf(&\n\n此圆的半径r=%f&,radius);printf(&\n\n此圆的周长为%f&,cricumference);printf(&\n\n\a此圆的面积为%f&,area);getchar();return 0; }
请大神帮帮忙,真无奈
试的一次一次全不管用
没老师真不好
那就加两个getchar就是了
getchar();getchar();return 0;不行?那就直接用while (1);return 0;
两个getchar
没错是这样。我用的VS2010,也是这样。getchar()根本没用,得用getch(),还要#include &conio.h&
登录百度帐号推荐应用
为兴趣而生,贴吧更懂你。或小白求解,哪错了_c语言吧_百度贴吧
&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&签到排名:今日本吧第个签到,本吧因你更精彩,明天继续来努力!
本吧签到人数:0成为超级会员,使用一键签到本月漏签0次!成为超级会员,赠送8张补签卡连续签到:天&&累计签到:天超级会员单次开通12个月以上,赠送连续签到卡3张
关注:318,057贴子:
小白求解,哪错了收藏
main(){ in a,b,
printf("sum is %d",sum);}
in a,b, in是什么
这什么格式啊
今天上课的时候老师给的事例
in --& int
你老师肯定写错了!
LZ等着被删帖吧。。。
哦,好像是我记错了,是int,我才接触C语言
printf("sum is %d",sum);}这样也不对吧?这是英语语法吧printf("%d",sum)
int main(){
printf("sum is %d",sum);
return 0;}
登录百度帐号推荐应用
为兴趣而生,贴吧更懂你。或}

我要回帖

更多关于 c语言求余数 的文章

更多推荐

版权声明:文章内容来源于网络,版权归原作者所有,如有侵权请点击这里与我们联系,我们将及时删除。

点击添加站长微信