C语言典型例题46
《C程序设计教程(第四版)——谭浩强》
题目:
习题3.6 企业发放的奖金根据利润提成。利润I低于或等于100 000元的,奖金可提成10%;
利润高于100 000元,低于200000元(100000<I≤200000)时,低于100000元的部分按10%提成,高于100000元的部分,可提成7.5%;
利润高于200 000元,低于400000元(200000<I≤400000)时,低于200000元的部分仍按上述办法提成(下同),高于200000元的部分,可提成5%;
利润高于400 000元,低于600000元(400000<I≤600000)时,高于400000元的部分,可提成3%;
利润高于600 000元,低于1000000元(600000<I≤1000000)时,高于600000元的部分,可提成1.5%;
利润高于1 000 000元,超过1 000 000元的部分按1%提成。
(1)用if语句编程序;
(2)用switch语句编程序。
代码:
(1)使用if语句
#include <stdio.h>
int main()
{float fee=0;//奖金 float I=0;//利润printf("请输入你所为公司创造的利润:\n");scanf("%f",&I);if(I<100000){fee=I*0.1;}else if(I>100000 &&I<=200000){fee=100000*0.1+((I-100000)*0.075);}else if(I>200000 &&I<=400000){fee=100000*0.1+((200000-100000)*0.075)+((I-200000)*0.05);}else if(I>400000 &&I<=600000){fee=100000*0.1+((200000-100000)*0.075)+((400000-200000)*0.05)+((I-400000)*0.03);}else if(I>600000 &&I<=1000000){fee=100000*0.1+((200000-100000)*0.075)+((400000-200000)*0.05)+((600000-400000)*0.03)+((I-600000)*0.015);}else{fee=100000*0.1+((200000-100000)*0.075)+((400000-200000)*0.05)+((600000-400000)*0.03)+((1000000-600000)*0.015)+((I-1000000)*0.01);}printf("你所应该得到的奖金为%.2f",fee);return 0;
}
(2)使用switch语句
//(2)用switch语句编程序。
#include <stdio.h>
int main()
{float fee=0;//奖金 float I=0;//利润float ticheng=0;//提成int swit=0;//switch语句的判断条件printf("请输入你所为公司创造的利润:\n");scanf("%f",&I);if(I<100000){swit=1;}else if(I>100000 &&I<=200000){swit=2;}else if(I>200000 &&I<=400000){swit=3;}else if(I>400000 &&I<=600000){swit=4;}else if(I>600000 &&I<=1000000){swit=5;}else{swit=6;}switch(swit){case 1:fee=I*0.1;break;case 2:fee=100000*0.1+((I-100000)*0.075);break;case 3:fee=100000*0.1+((200000-100000)*0.075)+((I-200000)*0.05);break;case 4:fee=100000*0.1+((200000-100000)*0.075)+((400000-200000)*0.05)+((I-400000)*0.03);break;case 5:fee=100000*0.1+((200000-100000)*0.075)+((400000-200000)*0.05)+((600000-400000)*0.03)+((I-600000)*0.015);break;case 6:fee=100000*0.1+((200000-100000)*0.075)+((400000-200000)*0.05)+((600000-400000)*0.03)+((1000000-600000)*0.015)+((I-1000000)*0.01);break;default:printf("!!!您的输入有误!!!");}printf("你所应该得到的奖金为%.2f",fee);return 0;
}
(3)汇总
//《C程序设计教程(第四版)——谭浩强》
//习题3.6 企业发放的奖金根据利润提成。利润I低于或等于100 000元的,奖金可提成10%;
// 利润高于100 000元,低于200000元(100000<I≤200000)时,低于100000元的部分按10%提成,高于100000元的部分,可提成7.5%;
// 利润高于200 000元,低于400000元(200000<I≤400000)时,低于200000元的部分仍按上述办法提成(下同),高于200000元的部分,可提成5%;
// 利润高于400 000元,低于600000元(400000<I≤600000)时,高于400000元的部分,可提成3%;
// 利润高于600 000元,低于1000000元(600000<I≤1000000)时,高于600000元的部分,可提成1.5%;
// 利润高于1 000 000元,超过1 000 000元的部分按1%提成。
//(1)用if语句编程序;
//(2)用switch语句编程序。//(1)用if语句编程序;
#include <stdio.h>
int main()
{float fee=0;//奖金 float I=0;//利润printf("请输入你所为公司创造的利润:\n");scanf("%f",&I);if(I<100000){fee=I*0.1;}else if(I>100000 &&I<=200000){fee=100000*0.1+((I-100000)*0.075);}else if(I>200000 &&I<=400000){fee=100000*0.1+((200000-100000)*0.075)+((I-200000)*0.05);}else if(I>400000 &&I<=600000){fee=100000*0.1+((200000-100000)*0.075)+((400000-200000)*0.05)+((I-400000)*0.03);}else if(I>600000 &&I<=1000000){fee=100000*0.1+((200000-100000)*0.075)+((400000-200000)*0.05)+((600000-400000)*0.03)+((I-600000)*0.015);}else{fee=100000*0.1+((200000-100000)*0.075)+((400000-200000)*0.05)+((600000-400000)*0.03)+((1000000-600000)*0.015)+((I-1000000)*0.01);}printf("你所应该得到的奖金为%.2f",fee);return 0;
}//(2)用switch语句编程序。
//#include <stdio.h>
//int main()
//{
// float fee=0;//奖金
// float I=0;//利润
// float ticheng=0;//提成
// int swit=0;//switch语句的判断条件
//
// printf("请输入你所为公司创造的利润:\n");
// scanf("%f",&I);
//
// if(I<100000)
// {
// swit=1;
// }
// else if(I>100000 &&I<=200000)
// {
// swit=2;
// }
// else if(I>200000 &&I<=400000)
// {
// swit=3;
// }
// else if(I>400000 &&I<=600000)
// {
// swit=4;
// }
// else if(I>600000 &&I<=1000000)
// {
// swit=5;
// }
// else
// {
// swit=6;
// }
//
// switch(swit)
// {
// case 1:
// fee=I*0.10;
// break;
// case 2:
// fee=100000*0.10+((I-100000)*0.075);
// break;
// case 3:
// fee=100000*0.10+((200000-100000)*0.075)+((I-200000)*0.05);
// break;
// case 4:
// fee=100000*0.10+((200000-100000)*0.075)+((400000-200000)*0.05)+((I-400000)*0.03);
// break;
// case 5:
// fee=100000*0.10+((200000-100000)*0.075)+((400000-200000)*0.05)+((600000-400000)*0.03)+((I-600000)*0.015);
// break;
// case 6:
// fee=100000*0.10+((200000-100000)*0.075)+((400000-200000)*0.05)+((600000-400000)*0.03)+((1000000-600000)*0.015)+((I-1000000)*0.01);
// break;
// default:
// printf("!!!您的输入有误!!!");
// }
//
// printf("你所应该得到的奖金为%.2f",fee);
//
// return 0;
//}
运行结果:
(1)编写if语句的方法的运行结果:

(2)编写switch语句的方法的运行结果:

运行结果的验证:(每一中方法只进行一次)
(1)编写if语句的方法的运行结果验证:

(2)编写switch语句的方法的运行结果验证:


代码编写过程中遇到的问题:
(1)奖金的书写
一定要细心,一步一步来,每一个数字都不能放过。
例如:作者就将一步的0少写了一个,导致验证的答案与编译器算出来的答案始终不同。
也不要不会就用chatGDP,因为AI也会犯错,就比如一个简单的计算它都能算错。。。
(2)脑力里要清楚每一步的步骤
(3)如果出现错误要从前到后一步一步来检查代码,这个时候,使用调试或者在代码某些关键部分添加一些代码,会让你更快速的定位到错误(有很多的错误编译器是不会报警告或者错误的)
相关文章:
C语言典型例题46
《C程序设计教程(第四版)——谭浩强》 题目: 习题3.6 企业发放的奖金根据利润提成。利润I低于或等于100 000元的,奖金可提成10%; 利润高于100 000元,低于200000元&…...
【目标检测】AGMF-Net:遥感目标检测的无注意力全局多尺度融合网络
《Attention-Free Global Multiscale Fusion Network for Remote Sensing Object Detection》 遥感目标检测的无注意力全局多尺度融合网络 原文:https://ieeexplore.ieee.org/document/10371366 摘要 遥感目标检测(RSOD)在复杂背景和小目标…...
2007-2022年上市公司资源节约数据
2007-2022年上市公司资源节约数据 1、时间:2007-2022年 2、来源:上市公司年报、社会责任报告、上市公司网站信息 3、指标:水资源节约、电力节约、原煤节约、天然气节约、汽油节约、柴油节约、集中供热节约、折算成统一标准煤共计节约 4、…...
onlyoffice连接器(connector)开发使用精讲 二次开发 深入开发【一】
连接器是onlyoffice调用web api的一个基础工具,可以方便开发者或者用户与业务系统结合使用web功能。 关于connector官方说明文档在这里:Automation API - ONLYOFFICE Api Documentation 注意:该功能针对开发者版、企业版,社区版常…...
VAuditDemo安装漏洞
目录 VAuditDemo安装漏洞 index.php header.php config.php lib.php install.php 分析结果 漏洞利用 第一步:删除install.lock文件,访问 install.php 抓包 第二步:通过审计构造payload 第三步:修改抓包请求内容&#x…...
算法学习-2024.8.16
一、Tensorrt学习补充 TensorRT支持INT8和FP16的计算。深度学习网络在训练时,通常使用 32 位或 16 位数据。TensorRT则在网络的推理时选用不这么高的精度,达到加速推断的目的。 TensorRT对于网络结构进行了重构,把一些能够合并的运算合并在了…...
ansible环境搭建
任务背景 公司的服务器越来越多, 维护⼀些简单的事情都会变得很繁琐。⽤ shell脚本来管理少量服务器效率还⾏, 服务器多了之后, shell脚本⽆ 法实现⾼效率运维。这种情况下,我们需要引⼊⾃动化运维⼯具, 对 多台服务器实现⾼效运维。 任务要求 通过管理服务器能够…...
在线陪玩App小程序源码开发:技术挑战与解决方案
随着互联网技术的飞速发展和用户需求的多样化,在线陪玩App小程序逐渐在游戏娱乐领域占据了一席之地。这类小程序不仅为用户提供了丰富的娱乐体验,也为开发者带来了新的机遇。然而,在开发过程中,数据处理、性能优化、系统扩展性和安…...
iOS profiles文件过期如何更新
创建发布用的Certificates 首先进入到https://developer.apple.com/account页面选择【证书】进入【新建证书】页面 点击【新建证书】按钮: 根据需求选中对应的【证书类型】,我选的是【Apple Distribution】, 开发者证书选择【Apple Devel…...
C/C++|C++标准库 string 流之std::ostringstream 和 std::istringstream 流
我们在 sstream 头文件中定义了三个类型来支持内存IO(ostringstream\istringstream\stringstream),这些类型可以向 string 写入数据,这里我们主要讲: std::ostringstream 和 std::istringstream( C Primer 中文版第五版) 以上的两个类型都继…...
Java-Redis
文章目录 基础基础内容使用场景/功能常见数据类型下载与安装可视化(多个)发布订阅功能事务两种持久化主从模式哨兵模式集群模式Cluster缓存淘汰过期删除缓存一致 Cache Aside缓存击穿缓存穿透缓存雪崩 实战内容配置文件配置Redis的BeanRedis为什么这么快…...
requests快速入门
1 安装requests库 如果你还没有安装requests库,可以通过pip安装: pip install requests 2 GET请求 GET请求通常用于从服务器请求数据。使用requests.get()函数可以发送GET请求。 2.1 基本使用 import requests url https://api.example.com/da…...
企业高性能web服务器——Nginx
# 企业高性能web服务器 1、Nginx 编译安装 1.1 编译安装 Nginx 这里下载nginx-1.24.0.tar.gz和nginx-1.26.1.tar.gz可以在官方网站上下载:https://nginx.org/en/download.html 示例:nginx-1.24.0.tar.gz #提前将编译安装出现问题的安装包下载好&…...
FreeSWITCH Java ESL Client Demo
1简介 在开启Java ESL Client编程之前,请先阅读《FreeSWITCH权威指南》学习什么是FreeSWITCH Event Socket。 Java连接FreeSWITCH的ESL可以采用两种模式:inbound和outbound。 Inbound模式:Java应用作为客户端主动连接到FreeSWITCH的内置TCP…...
手摸手系列之Linux下根据自己的jdk包构建docker镜像
项目在本地导出PDF文件正常,部署到Linux服务器docker容器中导出就报错,百撕不得姐,经查,docker依赖的openjdk版本是8u112版本,而我本地是8u421版本,那就升级jdk的小版本试试。 在docker的中央仓库[点我直达…...
tomcat相关
一、部署安装tomcat 在10和20上安装tomcat [root10 ~]# dnf install java-1.8.0-openjdk.x86_64 -y #安装java环境 [root10 ~]# tar zxf apache-tomcat-9.0.93.tar.gz -C /usr/local/ #安装并启动tomcat [root10 ~]# ln -s /usr/local/apache-tomcat-9.0.93/ /usr/local/tomcat…...
20240821给飞凌OK3588-C的核心板刷Rockchip原厂的Buildroot并启动
20240821给飞凌OK3588-C的核心板刷Rockchip原厂的Buildroot并启动 2024/8/21 15:22 viewproviewpro-ThinkBook-16-G5-IRH:~/repo_RK3588_Buildroot20240508$ viewproviewpro-ThinkBook-16-G5-IRH:~/repo_RK3588_Buildroot20240508$ ./build.sh lunch 3. rockchip_rk3588_evb7_…...
服务优雅上下线优雅停机
一、目的 服务发生线程锁住,需要下线服务时,保证请求中的接口不受影响,执行完后,再下线服务 二、步骤 *kill -15时执行改钩子函数 优雅停机 1.当线程锁住 2.运维那边监控到,然后进行kill -15 进程ID 3.代码这边监…...
什么是生信分析?深入探讨生物信息学的技术、方法与广泛应用
介绍 生物信息学分析,简称生信分析,是一个结合了生物学、计算机科学、信息学和统计学的多学科领域,旨在处理、分析和解释海量的生物数据。随着现代生物技术的发展,尤其是高通量测序(Next-Generation Sequencing, NGS&…...
JavaScript判断数组是否包含某个值
目录: 1.for循环/while循环2.数组的some方法3.数组的filter方法4.array.indexOf5.array.findIndex6.array.includes7.array.find8.set中的has方法 1.for循环/while循环 for循环: function contains(arr, val) {for (var i 0; i < arr.length; i) {if (arr[i] …...
Android Wi-Fi 连接失败日志分析
1. Android wifi 关键日志总结 (1) Wi-Fi 断开 (CTRL-EVENT-DISCONNECTED reason3) 日志相关部分: 06-05 10:48:40.987 943 943 I wpa_supplicant: wlan0: CTRL-EVENT-DISCONNECTED bssid44:9b:c1:57:a8:90 reason3 locally_generated1解析: CTR…...
51c自动驾驶~合集58
我自己的原文哦~ https://blog.51cto.com/whaosoft/13967107 #CCA-Attention 全局池化局部保留,CCA-Attention为LLM长文本建模带来突破性进展 琶洲实验室、华南理工大学联合推出关键上下文感知注意力机制(CCA-Attention),…...
【Oracle APEX开发小技巧12】
有如下需求: 有一个问题反馈页面,要实现在apex页面展示能直观看到反馈时间超过7天未处理的数据,方便管理员及时处理反馈。 我的方法:直接将逻辑写在SQL中,这样可以直接在页面展示 完整代码: SELECTSF.FE…...
DockerHub与私有镜像仓库在容器化中的应用与管理
哈喽,大家好,我是左手python! Docker Hub的应用与管理 Docker Hub的基本概念与使用方法 Docker Hub是Docker官方提供的一个公共镜像仓库,用户可以在其中找到各种操作系统、软件和应用的镜像。开发者可以通过Docker Hub轻松获取所…...
MongoDB学习和应用(高效的非关系型数据库)
一丶 MongoDB简介 对于社交类软件的功能,我们需要对它的功能特点进行分析: 数据量会随着用户数增大而增大读多写少价值较低非好友看不到其动态信息地理位置的查询… 针对以上特点进行分析各大存储工具: mysql:关系型数据库&am…...
云启出海,智联未来|阿里云网络「企业出海」系列客户沙龙上海站圆满落地
借阿里云中企出海大会的东风,以**「云启出海,智联未来|打造安全可靠的出海云网络引擎」为主题的阿里云企业出海客户沙龙云网络&安全专场于5.28日下午在上海顺利举办,现场吸引了来自携程、小红书、米哈游、哔哩哔哩、波克城市、…...
通过Wrangler CLI在worker中创建数据库和表
官方使用文档:Getting started Cloudflare D1 docs 创建数据库 在命令行中执行完成之后,会在本地和远程创建数据库: npx wranglerlatest d1 create prod-d1-tutorial 在cf中就可以看到数据库: 现在,您的Cloudfla…...
UE5 学习系列(三)创建和移动物体
这篇博客是该系列的第三篇,是在之前两篇博客的基础上展开,主要介绍如何在操作界面中创建和拖动物体,这篇博客跟随的视频链接如下: B 站视频:s03-创建和移动物体 如果你不打算开之前的博客并且对UE5 比较熟的话按照以…...
汽车生产虚拟实训中的技能提升与生产优化
在制造业蓬勃发展的大背景下,虚拟教学实训宛如一颗璀璨的新星,正发挥着不可或缺且日益凸显的关键作用,源源不断地为企业的稳健前行与创新发展注入磅礴强大的动力。就以汽车制造企业这一极具代表性的行业主体为例,汽车生产线上各类…...
oracle与MySQL数据库之间数据同步的技术要点
Oracle与MySQL数据库之间的数据同步是一个涉及多个技术要点的复杂任务。由于Oracle和MySQL的架构差异,它们的数据同步要求既要保持数据的准确性和一致性,又要处理好性能问题。以下是一些主要的技术要点: 数据结构差异 数据类型差异ÿ…...
