第七周 oj 1030 求奖金总数

博客主要介绍了在oj平台上的第1030题,通过解决该问题深化了对if语句嵌套的理解。作者在实践中体验到,复杂的嵌套可能导致理解困难,同时提出使用switch语句可能更为简洁。

问题及代码:

Copyright(c)2016,烟台大学计算机学院  
all rights reserved.    
作者:曹欣宇  
完成日期:2016年10月18日  
版本号:v1.0  
  
题目描述  
  求奖金总数  
输入  
  一个利润值  
输出  
  奖金值  
样例输入  
  900   
样例输出  
 90
#include<stdio.h>
int main()
{
	int i,j;
	scanf("%d",&i);
	if(i<=100000)
	{
		j=i*0.1;
	}
	else
	{
		if(i<=200000)
		{
			j=100000*0.1+(i-100000)*0.075;
		}
		else
		{
			if(i<=400000)
			{
				j=100000*0.1+100000*0.075+(i-200000)*0.05;
			}
			else
			{
				if(i<600000)
				{
					j=100000*0.1+100000*0.075+200000*0.05+(i-400000)*0.03;
					}
					else
					{
						if(i<=1000000)
						{
							j=100000*0.1+100000*0.075+200000*0.05+200000*0.03+(i-600000)*0.015;
						}
						else
						{
							if(i>=1000000)
							{
								j=100000*0.1+100000*0.075+200000*0.05+200000*0.03+400000*0.015+(i-1000000)*0.01;
							}
						}
					}
				}
			}
		}
	  printf("%d",j);
	  return 0;
}

运行结果:

### ZZULIOJ 题目 1030 解题思路和方法 ZZULIOJ 平台上的题目通常涉及多种编程技巧,对于特定编号的题目如1030而言,虽然直接针对此题目的具体描述未给出,但从其他类似题目的解析中可以获得一些通用性的指导原则。 #### 输入处理 在解决这类问题时,首先要正确读取输入数据。如果涉及到多组测试案例,则需循环读取直到文件结束EOF或是指定数量为止[^2]。例如,在Python中可以通过`input().strip()`来获取每一行的数据,并利用字符串操作函数进行进一步加工;而在C语言里则可能要用到`scanf`系列函数配合条件判断控制流程。 #### 数据结构选择 根据实际需挑选合适的数据存储方式能极大简化后续计算逻辑。比如数组适用于固定大小集合的操作,链表适合动态增删节点场景,哈希表用于快速查找键值对关系等。对于某些特殊情形下的数值运算(像大数相乘),还应考虑采用自定义的大整数类或库支持[^4]。 #### 关键算法设计 核心在于理解题目背景故事背后隐藏着什么样的数学模型或者是计算机科学经典问题变种形式。以最值为例,可以联想到贪心策略、动态规划甚至是图论里的单源最短路径等问题框架去思考解决方案的设计方向[^5]。 #### 输出格式调整 注意按照要精确输出结果,特别是关于精度保留位数、前后缀字符添加等方面的要不可忽视。有时为了满足格式化输出的需,还需要额外引入辅助变量记录中间状态变化以便于最终呈现[^1]。 ```c #include <stdio.h> int main(){ // 假设此处为适应题目而编写的代码片段 } ```
评论 1
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值