当前位置: 首页 > news >正文

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程序设计教程&#xff08;第四版&#xff09;——谭浩强》 题目&#xff1a; 习题3.6 企业发放的奖金根据利润提成。利润I低于或等于100 000元的&#xff0c;奖金可提成10%&#xff1b; 利润高于100 000元&#xff0c;低于200000元&…...

【目标检测】AGMF-Net:遥感目标检测的无注意力全局多尺度融合网络

《Attention-Free Global Multiscale Fusion Network for Remote Sensing Object Detection》 遥感目标检测的无注意力全局多尺度融合网络 原文&#xff1a;https://ieeexplore.ieee.org/document/10371366 摘要 遥感目标检测&#xff08;RSOD&#xff09;在复杂背景和小目标…...

2007-2022年上市公司资源节约数据

2007-2022年上市公司资源节约数据 1、时间&#xff1a;2007-2022年 2、来源&#xff1a;上市公司年报、社会责任报告、上市公司网站信息 3、指标&#xff1a;水资源节约、电力节约、原煤节约、天然气节约、汽油节约、柴油节约、集中供热节约、折算成统一标准煤共计节约 4、…...

onlyoffice连接器(connector)开发使用精讲 二次开发 深入开发【一】

连接器是onlyoffice调用web api的一个基础工具&#xff0c;可以方便开发者或者用户与业务系统结合使用web功能。 关于connector官方说明文档在这里&#xff1a;Automation API - ONLYOFFICE Api Documentation 注意&#xff1a;该功能针对开发者版、企业版&#xff0c;社区版常…...

VAuditDemo安装漏洞

目录 VAuditDemo安装漏洞 index.php header.php config.php lib.php install.php 分析结果 漏洞利用 第一步&#xff1a;删除install.lock文件&#xff0c;访问 install.php 抓包 第二步&#xff1a;通过审计构造payload 第三步&#xff1a;修改抓包请求内容&#x…...

算法学习-2024.8.16

一、Tensorrt学习补充 TensorRT支持INT8和FP16的计算。深度学习网络在训练时&#xff0c;通常使用 32 位或 16 位数据。TensorRT则在网络的推理时选用不这么高的精度&#xff0c;达到加速推断的目的。 TensorRT对于网络结构进行了重构&#xff0c;把一些能够合并的运算合并在了…...

ansible环境搭建

任务背景 公司的服务器越来越多, 维护⼀些简单的事情都会变得很繁琐。⽤ shell脚本来管理少量服务器效率还⾏, 服务器多了之后, shell脚本⽆ 法实现⾼效率运维。这种情况下&#xff0c;我们需要引⼊⾃动化运维⼯具, 对 多台服务器实现⾼效运维。 任务要求 通过管理服务器能够…...

在线陪玩App小程序源码开发:技术挑战与解决方案

随着互联网技术的飞速发展和用户需求的多样化&#xff0c;在线陪玩App小程序逐渐在游戏娱乐领域占据了一席之地。这类小程序不仅为用户提供了丰富的娱乐体验&#xff0c;也为开发者带来了新的机遇。然而&#xff0c;在开发过程中&#xff0c;数据处理、性能优化、系统扩展性和安…...

iOS profiles文件过期如何更新

创建发布用的Certificates 首先进入到https://developer.apple.com/account页面选择【证书】进入【新建证书】页面 点击【新建证书】按钮&#xff1a; 根据需求选中对应的【证书类型】&#xff0c;我选的是【Apple Distribution】&#xff0c; 开发者证书选择【Apple Devel…...

C/C++|C++标准库 string 流之std::ostringstream 和 std::istringstream 流

我们在 sstream 头文件中定义了三个类型来支持内存IO(ostringstream\istringstream\stringstream)&#xff0c;这些类型可以向 string 写入数据&#xff0c;这里我们主要讲&#xff1a; std::ostringstream 和 std::istringstream( C Primer 中文版第五版) 以上的两个类型都继…...

Java-Redis

文章目录 基础基础内容使用场景/功能常见数据类型下载与安装可视化&#xff08;多个&#xff09;发布订阅功能事务两种持久化主从模式哨兵模式集群模式Cluster缓存淘汰过期删除缓存一致 Cache Aside缓存击穿缓存穿透缓存雪崩 实战内容配置文件配置Redis的BeanRedis为什么这么快…...

requests快速入门

1 安装requests库 如果你还没有安装requests库&#xff0c;可以通过pip安装&#xff1a; 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可以在官方网站上下载&#xff1a;https://nginx.org/en/download.html 示例&#xff1a;nginx-1.24.0.tar.gz #提前将编译安装出现问题的安装包下载好&…...

FreeSWITCH Java ESL Client Demo

1简介 在开启Java ESL Client编程之前&#xff0c;请先阅读《FreeSWITCH权威指南》学习什么是FreeSWITCH Event Socket。 Java连接FreeSWITCH的ESL可以采用两种模式&#xff1a;inbound和outbound。 Inbound模式&#xff1a;Java应用作为客户端主动连接到FreeSWITCH的内置TCP…...

手摸手系列之Linux下根据自己的jdk包构建docker镜像

项目在本地导出PDF文件正常&#xff0c;部署到Linux服务器docker容器中导出就报错&#xff0c;百撕不得姐&#xff0c;经查&#xff0c;docker依赖的openjdk版本是8u112版本&#xff0c;而我本地是8u421版本&#xff0c;那就升级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_…...

服务优雅上下线优雅停机

一、目的 服务发生线程锁住&#xff0c;需要下线服务时&#xff0c;保证请求中的接口不受影响&#xff0c;执行完后&#xff0c;再下线服务 二、步骤 *kill -15时执行改钩子函数 优雅停机 1.当线程锁住 2.运维那边监控到&#xff0c;然后进行kill -15 进程ID 3.代码这边监…...

什么是生信分析?深入探讨生物信息学的技术、方法与广泛应用

介绍 生物信息学分析&#xff0c;简称生信分析&#xff0c;是一个结合了生物学、计算机科学、信息学和统计学的多学科领域&#xff0c;旨在处理、分析和解释海量的生物数据。随着现代生物技术的发展&#xff0c;尤其是高通量测序&#xff08;Next-Generation Sequencing, NGS&…...

JavaScript判断数组是否包含某个值

目录&#xff1a; 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] …...

【Python】 -- 趣味代码 - 小恐龙游戏

文章目录 文章目录 00 小恐龙游戏程序设计框架代码结构和功能游戏流程总结01 小恐龙游戏程序设计02 百度网盘地址00 小恐龙游戏程序设计框架 这段代码是一个基于 Pygame 的简易跑酷游戏的完整实现,玩家控制一个角色(龙)躲避障碍物(仙人掌和乌鸦)。以下是代码的详细介绍:…...

日语学习-日语知识点小记-构建基础-JLPT-N4阶段(33):にする

日语学习-日语知识点小记-构建基础-JLPT-N4阶段(33):にする 1、前言(1)情况说明(2)工程师的信仰2、知识点(1) にする1,接续:名词+にする2,接续:疑问词+にする3,(A)は(B)にする。(2)復習:(1)复习句子(2)ために & ように(3)そう(4)にする3、…...

PPT|230页| 制造集团企业供应链端到端的数字化解决方案:从需求到结算的全链路业务闭环构建

制造业采购供应链管理是企业运营的核心环节&#xff0c;供应链协同管理在供应链上下游企业之间建立紧密的合作关系&#xff0c;通过信息共享、资源整合、业务协同等方式&#xff0c;实现供应链的全面管理和优化&#xff0c;提高供应链的效率和透明度&#xff0c;降低供应链的成…...

线程与协程

1. 线程与协程 1.1. “函数调用级别”的切换、上下文切换 1. 函数调用级别的切换 “函数调用级别的切换”是指&#xff1a;像函数调用/返回一样轻量地完成任务切换。 举例说明&#xff1a; 当你在程序中写一个函数调用&#xff1a; funcA() 然后 funcA 执行完后返回&…...

Frozen-Flask :将 Flask 应用“冻结”为静态文件

Frozen-Flask 是一个用于将 Flask 应用“冻结”为静态文件的 Python 扩展。它的核心用途是&#xff1a;将一个 Flask Web 应用生成成纯静态 HTML 文件&#xff0c;从而可以部署到静态网站托管服务上&#xff0c;如 GitHub Pages、Netlify 或任何支持静态文件的网站服务器。 &am…...

【python异步多线程】异步多线程爬虫代码示例

claude生成的python多线程、异步代码示例&#xff0c;模拟20个网页的爬取&#xff0c;每个网页假设要0.5-2秒完成。 代码 Python多线程爬虫教程 核心概念 多线程&#xff1a;允许程序同时执行多个任务&#xff0c;提高IO密集型任务&#xff08;如网络请求&#xff09;的效率…...

前端开发面试题总结-JavaScript篇(一)

文章目录 JavaScript高频问答一、作用域与闭包1.什么是闭包&#xff08;Closure&#xff09;&#xff1f;闭包有什么应用场景和潜在问题&#xff1f;2.解释 JavaScript 的作用域链&#xff08;Scope Chain&#xff09; 二、原型与继承3.原型链是什么&#xff1f;如何实现继承&a…...

【OSG学习笔记】Day 16: 骨骼动画与蒙皮(osgAnimation)

骨骼动画基础 骨骼动画是 3D 计算机图形中常用的技术&#xff0c;它通过以下两个主要组件实现角色动画。 骨骼系统 (Skeleton)&#xff1a;由层级结构的骨头组成&#xff0c;类似于人体骨骼蒙皮 (Mesh Skinning)&#xff1a;将模型网格顶点绑定到骨骼上&#xff0c;使骨骼移动…...

CRMEB 框架中 PHP 上传扩展开发:涵盖本地上传及阿里云 OSS、腾讯云 COS、七牛云

目前已有本地上传、阿里云OSS上传、腾讯云COS上传、七牛云上传扩展 扩展入口文件 文件目录 crmeb\services\upload\Upload.php namespace crmeb\services\upload;use crmeb\basic\BaseManager; use think\facade\Config;/*** Class Upload* package crmeb\services\upload* …...

Redis数据倾斜问题解决

Redis 数据倾斜问题解析与解决方案 什么是 Redis 数据倾斜 Redis 数据倾斜指的是在 Redis 集群中&#xff0c;部分节点存储的数据量或访问量远高于其他节点&#xff0c;导致这些节点负载过高&#xff0c;影响整体性能。 数据倾斜的主要表现 部分节点内存使用率远高于其他节…...