c语言程序设计鸡兔同笼问题(c语言 鸡兔同笼问题)

http://www.itjxue.com  2023-03-18 20:01  来源:未知  点击次数: 

C语言:鸡兔同笼问题

#include?stdio.h

void?main()

{????int?a,b,c,d;

printf("这是一个用于算鸡兔同笼的小程序\n请输入鸡兔的总数");

scanf("%d",a);

if(a=0)

{

printf("\n请输入鸡兔脚的总数");

scanf("%d",b);

if(b%2==1)

printf("脚的数量出现奇数,真奇怪啊!\n");

else?if(b=a*4b=a*2)

{

c=(4*a-b)/2;?//?鸡的数目

d=a-c;??//?兔的数目

if(c*2+d*4==b)

printf("鸡有%ld只\n兔有%ld只\n",c,d);?//?c和d反了

else

printf("这个真难,计算机也没法算!\n");

}

else

printf("输入鸡兔脚的数量范围不正确,正确的范围是%d--%d!\n",a*2,a*4);

}

else

printf("数量不能为负!\n");

}

c语言:鸡、兔同笼,鸡比兔多15只,鸡、兔共有脚132只,问鸡、兔各多少只?

解:设兔有x只,则鸡有(x+15)只。

4x+2(x+15)=132

4x+2x+30=132

6x=102

x=17

17+15=32(只)

答:鸡有32只,兔有17只。

鸡兔同笼的问题 c语言怎么样编写

1、编写思路如下:

假设有x只鸡,y只兔,两者一共有m只头,n只脚,则有:

x + y = m ; 2 * x + 4 * y = n ;

即得到关系式,x + 2y =n/2 , x + y = m , y = n/2 - m , x = 2 * m - n/2。

2、代码及注释如下:

#includestdio.h

main ( )

{

int a, b ;

printf("请分别输入动物头与脚的数目:\n");

scanf("%d%d",a,b); //头数为a, 脚数目为b;

printf("一共有%d只鸡,%d只兔子\n",b/2-a,2 * a - b/2);

}

扩展资料:

常见鸡兔同笼类型问题:

1、班主任张老师带五年级(2)班50名同学栽树,张老师栽5棵,男生每人栽3棵,女生每人栽2棵,总共栽树120棵,问几名男生,几名女生?

2、大油瓶每瓶装4千克,小油瓶2瓶装1千克,现有100千克油装了共60个瓶子。问大小油瓶各多少个?

3、小毛参加数学竞赛,共做20道题,得67分,已知做对一道得5分,不做得0分,错一题扣1分,又知道他做错的题和没做的同样多。问小毛做对几道题?

4、有蜘蛛,蜻蜓,蝉三种动物共18只,共有腿118条,翅膀20对(蜘蛛8条腿;蜻蜓6条腿,2对翅膀;蝉6条腿,1对翅膀),三种动物各几只?

参考资料来源:百度百科-鸡兔同笼问题

鸡兔同笼问题C语言程序编写

鸡兔同笼,共有35个头,94条腿,求鸡和兔子各有多少只?

#includebits/stdc++.h

using namespace std;

int main()

{

int a,b,c,d;

a=35,b=94;

c=2*a-b/2;

d=b/2-a;

cout"c="c"d="dendl;

return 0;

}

c=23?? d=12

拓展资料:

C语言是一门通用计算机编程语言,广泛应用于底层开发。C语言的设计目标是提供一种能以简易的方式编译、处理低级存储器、产生少量的机器码以及不需要任何运行环境支持便能运行的编程语言。

尽管C语言提供了许多低级处理的功能,但仍然保持着良好跨平台的特性,以一个标准规格写出的C语言程序可在许多电脑平台上进行编译,甚至包含一些嵌入式处理器(单片机或称MCU)以及超级电脑等作业平台。

二十世纪八十年代,为了避免各开发厂商用的C语言语法产生差异,由美国国家标准局为C语言制定了一套完整的美国国家标准语法,称为ANSI C,作为C语言最初的标准。? ?目前2011年12月8日,国际标准化组织(ISO)和国际电工委员会(IEC)发布的C11标准是C语言的第三个官方标准,也是C语言的最新标准,该标准更好的支持了汉字函数名和汉字标识符,一定程度上实现了汉字编程。

C语言是一门面向过程的计算机编程语言,与C++,Java等面向对象的编程语言有所不同。

其编译器主要有Clang、GCC、WIN-TC、SUBLIME、MSVC、Turbo C等。

参考资料:C语言_百度百科

用C语言编写鸡兔同笼问题

#include

stdio.h

void

main(

)

{

int

ret

=

0;

//

表示最后一个printf的返回值

while(1)

{

int

h,f,c,r;

printf("请输入头的数目:");

scanf("%d",h);

printf("\n请输入脚的数目(必须为偶数):");

scanf("%d",f);

while(f%2!=0

f

!=

h

!=

0)

//这里的不等于的条件可以不加

{

printf("\n输入脚的数目为奇数,请重新输入脚的数目(必须偶数):");

scanf("%d",f);

if(

f

4h

||

f

2h)

continue;

}

for(c=0;c=h;c++)

for(r=1;r=h;r++)

//这句改成:for(r=0;

r

=

h-c;

r++)好点,减少的循环的次数,加了效率

{

if(c+r==h2*c+4*r==f)

ret

=

printf("\n鸡的数目为%d,兔子的数目为%d\n\n",c,r);

}

if(

ret

==

39)

/*作用是输入一次成功后,结束大循环,

可以不要*/

break;

}

}

C语言编写鸡兔同笼的问题

#includestdio.h

int main()

{

int a,b,M,N;

printf("请输入鸡兔的总头数\n");

scanf_s("%d",a);

printf("请输入鸡兔的总腿数\n");

scanf_s("%d",b);

scanf_s("%d",M);

M=(2*a)-(b/2);

printf("鸡的数目为%d只");

scanf_s("%d",N);

N=(b/2)-(a);

printf("兔的数目为%d只");

return 0;

}

我目前是C语言的新手,目前只会做这一类。如果用的是VS(visual studio)编程的话,scanf后必须加_s,这是VS独有的,其他的编程软件随意。

(责任编辑:IT教学网)

更多

推荐新手入门文章