這裡蒐索程式師資訊,查找有用的技術資料
当前位置:首页 » 编程语言 » 鸡兔同笼算法c语言
扩展阅读
webinf下怎么引入js 2023-08-31 21:54:13
堡垒机怎么打开web 2023-08-31 21:54:11

鸡兔同笼算法c语言

发布时间: 2022-05-11 06:47:09

① 用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
!=
0
&&
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==h&&2*c+4*r==f)
ret
=
printf("\n鸡的数目为%d,兔子的数目为%d\n\n",c,r);
}
if(
ret
==
39)
/*作用是输入一次成功后,结束大循环,
可以不要*/
break;
}
}

② 鸡兔同笼的问题 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、代码及注释如下:

#include<stdio.h>

main ( )

{

int a, b ;

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

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

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

}

(2)鸡兔同笼算法c语言扩展阅读:

常见鸡兔同笼类型问题:

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语言鸡兔同笼

多次修改后面有个精减版的
#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 != 0 ) //加上一个输入0值继续的条件,这里的while 循环可以不要了,后面的两个循环,再加上if的判断条件,已经解决了这里不为偶数的问题(个人认为,验证过了)
{
printf("\n输入脚的数目为奇数,请重新输入脚的数目(必须偶数):");
scanf("%d",&f);
}
while(f<2*h && h!= 0)//同上
{
printf("\n输入脚的数目过小,请输入脚的数目(必须偶数):");
scanf("%d",&f);
/* 在这里加上 if( f %2 != 0) continue; */
/*作用是输入的不是偶数,就要重新输入 */
}
while(f>4*h&&h!=0)//同上
{
printf("\n输入脚的数目过大,请输入脚的数目(必须偶数):");
scanf("%d",&f);
/ * if( f % 2 != 0) continue; */
/*作用同上*/
}

for(c=0;c<=h;c++)
for(r=1;r<=h;r++) //这句改成:for(r=0; r <= h-c; r++)好点,减少的循环的次数,加了效率
{
if(c+r==h&&2*c+4*r==f)
ret = printf("\n鸡的数目为%d,兔子的数目为%d\n\n",c,r);
}
if( ret == 39) /*作用是输入一次成功后,结束大循环, 可以不要*/
break;
}
}
/***********************************************************************/
#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 != 0 && 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==h&&2*c+4*r==f)
ret = printf("\n鸡的数目为%d,兔子的数目为%d\n\n",c,r);
}
if( ret == 39) /*作用是输入一次成功后,结束大循环, 可以不要*/
break;
}
}

④ C语言中鸡兔同笼问题的代码

#include<stdio.h>

voidmain()

{inta,b,c,d;

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

scanf("%d",&a);

if(a>=0)

{

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

scanf("%d",&b);

if(b%2==1)

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

elseif(b<=a*4&&b>=a*2)

{

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

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

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

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

else

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

}

else

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

}

else

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

}

⑤ C语言编程鸡兔同笼怎么写代码

#include
<stdio.h>
main()
{
unsigned
long
int
a,b,c,d;
printf("这是一个用于算鸡兔同笼的小程序(仅能输入整数,使用回车键切换)\n请输入鸡兔的总数");
scanf("%d",&a);
printf("\n请输入鸡兔脚的总数");
scanf("%d",&b);
if(b%2
!=
0)
{
printf("输入的鸡兔脚的总数有错误!");
return
0;
}
c=(4*a-b)/2;
//
鸡的数目
d=a-c;
//
兔的数目
if(c*2+d*4==b)
printf("鸡有%ld只\n兔有%ld只",c,d);
else
printf

⑥ 求编写一个鸡兔同笼的程序,如图,c语言

#include <stdio.h>


int main() {

for (int i = 1; i < 35; i++)

if (2 * i + (35 - i) * 4 == 94)

printf("鸡有%d只,兔有%d只 ", i, 35 - i);

return 0;

}

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

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

#include<bits/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="<<d<<endl;
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语言_网络