acm上的题目C语言 已知市场上每个橘子卖0.4元.假设第1天买了2个橘子,从第2天开始,每天买的个数是前一天的两倍,直到买的橘子个数达到不超过N个的最大值.求每天平均花多少钱.Input输入整数N,
来源:学生作业帮助网 编辑:六六作业网 时间:2024/11/27 12:24:51
acm上的题目C语言 已知市场上每个橘子卖0.4元.假设第1天买了2个橘子,从第2天开始,每天买的个数是前一天的两倍,直到买的橘子个数达到不超过N个的最大值.求每天平均花多少钱.Input输入整数N,
acm上的题目
C语言 已知市场上每个橘子卖0.4元.假设第1天买了2个橘子,从第2天开始,每天买的个数是前一天的两倍,直到买的橘子个数达到不超过N个的最大值.求每天平均花多少钱.
Input
输入整数N,N大于等于2.
Output
输出平均每天花的钱.保留2位小数
acm上的题目C语言 已知市场上每个橘子卖0.4元.假设第1天买了2个橘子,从第2天开始,每天买的个数是前一天的两倍,直到买的橘子个数达到不超过N个的最大值.求每天平均花多少钱.Input输入整数N,
这题主要是大数运算的问题...天数少的话用普通的定义的变量可以,但是天数多了,这个就是指数级的运算,变量内存肯定会溢出.
网上大数运算加减乘法都有 可以用一个普通变量 i 代表天数 不断自增 用大数运算的算法求出在 i 天一共买了多少橘子 存储的结构为字符串数组 接收的整数N也是字符串数组,通过字符串比较函数判断在 i 天买的橘子数是否超过N 最后可以确定天数 i 的取值
乘法 加法的大数运算都可以在网上找到 这里涉及到的除法就是 最后求的的买的总橘子数乘上0.4后 除以天数 这个要看天数是几位了 可以很容易判断出来的 判断好后 比如天数是3位的 就用前三位字符串转换成普通变量的数值 然后除以天数 i 得数存到另一个字符串数组的首位 余数与原来字符串的下一位组成新的普通变量数值 继续除以天数 i
之后就是不断循环 直到 原字符串数组都搞定