作为刚学几天C语言的新生,打算发篇博客巩固自己所学,以下为个人拙见,有更好的方式希望大伙提供
题目:给出鲲头和兔头总数,及鸡脚和兔脚总数,求解鸡和兔分别多少只
设头总数head,脚总数foot,鸡数量x,兔数量y.
可列方程:x + y=head;
2x + 4y=foot;
解得:x=(4 * head - foot) / 2
y=(foot - 2 * head) / 2
x = (4 * head - foot) / 2;
y = (foot - 2 * head) / 2;
用scanf获取输入的头数和脚数.
scanf("%d %d",&head,&foot);
思考一下正确的答案应满足:
1.鸡和兔子数量大于0.
2.脚的总数应为偶数.
if(x < 0 || y < 0 || foot % 2 == 1)
{
printf("No solution");
}
else
printf("chickens = %d; rabbits = %d", x, y);
最后代码奉上
#include<stdio.h>
int main()
{
int head, foot, x, y;
scanf_s("%d %d", &head, &foot);
x = (4 * head - foot) / 2;
y = (foot - 2 * head) / 2;
if (x < 0 || y < 0 || foot % 2 == 1)
{
printf("No solution!");
}
else
printf("chickens = %d; rabbits = %d", x, y);
return 0;
}