【西安交通大学程序设计基础Moodle实验13】 百钱买百鸡

提示:本人程序仅供参考,学无止尽,请自行研究


一、题目

若3文钱可以买1只公鸡,2文钱可以买1只母鸡,1文钱可以买3只小鸡,求在买的公鸡数最多的前提下,
用100文钱买100只鸡,能买多少只母鸡?请自定义一个函数,采用在main函数中调用该函数方式实现
求解,并在main函数中以十进制整型输出结果。

二、代码

代码如下:

#include<stdio.h>
int main(){
	int BuyChicken(int money,int number);
	int max = BuyChicken(100,100);
	printf("%d",max);
	return 0;
}
//定义用任意钱买任意个鸡的函数 
int BuyChicken(int money,int number){
	int cockNumber ,henNumber, chickenNumber;
	int cockMoney = 3;
	int henMoney = 2;
	int chickenMoney3 = 1; //代表三只小鸡一文钱 
	int hen[money/cockMoney];
	int k = 0;
	for(cockNumber = 1; cockNumber < (money/cockMoney); cockNumber++)//公鸡数量从1开始算 
		for(henNumber = 1; henNumber < (money/henMoney); henNumber++)//母鸡数量从1开始算 
			for(chickenNumber = 0; chickenNumber < money/chickenMoney3; chickenNumber++){
				if(((cockNumber + henNumber + chickenNumber*3) == number) && ((cockNumber * cockMoney + henNumber * henMoney + chickenNumber * chickenMoney3) == money) ){
				hen[k] = henNumber;
				k++;
				} 
			}
			return hen[k-1];//数组的最后一位就是最买多的公鸡情况下母鸡的数量 
}

总结

①尽量使我们定义的变量“见名知意”
②尽量使函数的适用性强,不止于满足该题目的条件

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

雨落俊泉

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值