C语言题目:分段函数练习

题目描述

输入x ,计算并输出下列分段函数 f(x) 的值。可以调用数学库函数:平方根函数sqrt(),绝对值函数fabs() 和幂函数 pow()。

二级C语言-分段函数

 保留2位小数

输入格式

x

输出格式

f(x)

样例输入

5

样例输出

15.00

代码分析

  1. 包含标准输入输出库和数学库: #include <stdio.h>#include <math.h> 这两行代码是预处理指令,它们告诉编译器在实际编译之前包含标准输入输出库和数学库。标准输入输出库提供了进行输入输出操作的功能,如printfscanf函数。数学库提供了数学函数的支持,如pow函数和fabs函数。

    #include <stdio.h>
    #include <math.h>

  2. 定义主函数: int main(void) 是C程序的入口点,void表示这个函数不接受任何参数。

    int main(void)
    

  3. 定义变量:

    • double x:用于存储用户输入的数值。
    • double sum:用于存储根据特定规则计算出的输出值。
      	double x;double sum;

  4. 输入变量x的值: scanf("%lf", &x); 这个函数调用用于从标准输入(通常是键盘)读取一个双精度浮点数,并将其存储在变量x中。

    	scanf("%lf", &x);
    

  5. 根据x的值计算sum:

    • 使用if-else语句来判断x的范围,并根据这个范围来计算sum的值。
    • 如果x小于0,sum被设置为x的绝对值,使用fabs(x)函数。
    • 如果x大于等于0且小于2,sum被设置为(x + 1)的平方根,使用pow((x + 1), 1.0 / 2)函数。
    • 如果x大于等于2且小于4,sum被设置为(x + 2)的5次方,使用pow((x + 2), 5.0)函数。
    • 如果x大于等于4,sum被设置为2 * x + 5
      	if (x < 0)sum = fabs(x);else if (x >= 0 && x < 2)sum = (pow((x + 1), 1.0 / 2));else if (x >= 2 && x < 4)sum = (pow((x + 2), 5.0));elsesum = (2 * x + 5.0);

  6. 输出结果: printf("%.2lf\n", sum); 这个函数调用用于输出计算得到的sum值,格式化为保留两位小数的浮点数。

    	printf("%.2lf\n",sum);
    

  7. 函数返回: return 0; 表示main函数执行成功并返回0。在C语言中,main函数的返回值通常用于表示程序的退出状态,其中0表示成功。

    	return 0;
    

源代码

#include <stdio.h>
#include <math.h>
int main(void)
{double x;double sum;scanf("%lf", &x);if (x < 0)sum = fabs(x);else if (x >= 0 && x < 2)sum = (pow((x + 1), 1.0 / 2));else if (x >= 2 && x < 4)sum = (pow((x + 2), 5.0));elsesum = (2 * x + 5.0);printf("%.2lf\n",sum);return 0;
}

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/800094.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

Linux -- 字符设备驱动--LED的驱动开发(初级框架)

驱动框架一阶段 我们怎样去点亮一个 LED 呢&#xff1f;分为三步&#xff1a; 看原理图确定引脚&#xff0c;确定引脚输出什么电平才能点亮/熄灭 LED 看主芯片手册&#xff0c;确定寄存器操作方法&#xff1a;哪些寄存器&#xff1f;哪些位&#xff1f;地址是&#xff1f; 编…

webpack5如何关闭全屏错误

1、找到vue.config.js 2、在上面的devServer里面添加如下&#xff1a; client: {overlay: false, // 禁用全局错误提示},

mynet开源库

1.介绍 个人实现的c开源网络库&#xff0e; 2.软件架构 1.结构图 2.基于event的自动分发机制 3.多优先级分发队列&#xff0c;延迟分发队列 内部event服务于通知机制的优先级为0&#xff0c;外部event优先级为1&#xff0e; 当集中处理分发的event_callback时&#xff0c…

更新!谷歌倾斜摄影转换生成OSGB瓦片V0.2版

半个月前发表了一篇文章(首发&#xff01;谷歌倾斜摄影转换生成OSGB格式),首次将谷歌原始倾斜摄影瓦片转成OSGB瓦片&#xff0c;有读者对文章里的内容有诸多疑问&#xff0c;可能我在文章中描述的不够清楚&#xff0c;这里再解释一下。 1.谷歌倾斜摄影3DTiles瓦片生成方案 之…

若依ts版本(vue3+element plus+ts)

1、项目简介 本项目参考若依前后端分离版&#xff0c;前端由[若依vue3]改写为ts版本[ruoyi-web-vue3-ts]&#xff0c;后端对[若依V3.8.7]进行了修改[后端版本分支vue3.ts.3.8.7]&#xff0c;具体文档参见[若依官方文档]。本项目对部分代码做了优化&#xff0c;增加了activiti7…

langchain 学习笔记-FunctionCalling三种方式

ChatGPT 基于海量的训练数据生成答案&#xff0c;所以它无法回答训练数据中没有的信息或搜索信息 。人们希望 ChatGPT 具有对话以外的各种功能&#xff0c;例如“我想管理我的待办事项列表”。 函数调用是对此类请求的响应。 通过使用函数调用&#xff0c;ChatGPT 现在可以在生…

LeetCode-215. 数组中的第K个最大元素【数组 分治 快速选择 排序 堆(优先队列)】

LeetCode-215. 数组中的第K个最大元素【数组 分治 快速选择 排序 堆&#xff08;优先队列&#xff09;】 题目描述&#xff1a;解题思路一&#xff1a;排序解题思路二&#xff1a;快速选择解题思路三&#xff1a;0 题目描述&#xff1a; 给定整数数组 nums 和整数 k&#xff0…

AI技术创业机会之智慧城市与智慧交通

人工智能(AI)技术的创新与发展为智慧城市与智慧交通领域带来了革命性的变革,为创业者创造了大量创新与创业机会。以下详述了智慧城市与智慧交通背景下AI技术的创业机会及其具体细节与内容,以5000字篇幅深入剖析各细分领域,为有志于投身这一领域的创业者提供全面、深入的商…

Vue-ts项目导入Js文件方法-书写提示无法找到模块“XXXX”的声明文件-配置说明

提示 无法找到模块“/filter/filter”的声明文件。“d:/code/byWork/mixmarvel/SendAssetsClient/src/filter/filter.js”隐式拥有 "any" 类型。 解决方法 修改 tsconfig.json {"compilerOptions": {"target": "esnext","modu…

OneFlow深度学习框架介绍

OneFlow是一个开源的深度学习框架&#xff0c;旨在为用户提供高效、易用的工具来进行深度学习模型的开发、训练和部署。以下是一些OneFlow框架的特点和优势&#xff1a; 高效性能&#xff1a; OneFlow针对大规模深度学习模型进行了优化&#xff0c;具有优秀的计算性能和内存管理…

Linux Shell 比较运算有哪些,以及怎么用

Linux Shell 比较运算有哪些&#xff0c;以及怎么用 在 Linux Shell 脚本编程中&#xff0c;进行算术比较是常见的需求&#xff0c;特别是在编写条件判断语句时。Shell 提供了一系列的算术比较操作符&#xff0c;这些操作符通常用在 if、while 等语句中&#xff0c;以便进行数…

程序员如何搞副业?

程序员不仅拥有将抽象概念转化为实际应用的能力&#xff0c;还通常具备强大的逻辑思维和问题解决能力。然而&#xff0c;许多程序员并不满足于仅仅在一家公司工作&#xff0c;他们渴望通过副业来实现个人价值的最大化&#xff0c;增加收入&#xff0c;甚至探索自己的创业梦想。…

前端及nodejs后端面试经验

目录 前端双向绑定如何实现自定义指令如何实现promise的执行顺序父子组件的信息传递cookies&#xff0c;session&#xff0c;webStoragevuex回流和重绘指令watch和watchEffect的区别watch和computed的区别vue3新功能Composition APIproxy和definePropertyTeleport 请求post和pu…

RIP配置不求人:手把手教你配置RIP路由

#教育优质作者发文挑战赛# 大家好&#xff0c;今天给同学们介绍一下RIP基本功能相关配置 01、基本概念 RIP是一种基于距离矢量&#xff08;Distance-Vector&#xff09;算法的协议&#xff0c;它使用跳数&#xff08;Hop Count&#xff09;作为度量值来衡量到达目的地址的距离…

耐压40V、输出电压1.23-37V可调,适用于工控主板、TV板卡、安卓主板、车载功放电源等产品方案应用。

一、应用领域 适用于工控主板、TV板卡、安卓主板、车载功放电源等产品方案应用。 二、功能介绍 D1509是一款输入耐压40V、输出电压1.23-37V可调、输出电流最大2.0A的高效率、高精度DC-DC芯片&#xff0c;其输出电压有固定3.3V、5.0V和12.0V的版本&#xff0c;可以为客户省去…

【2024】Rancher的安装与介绍

———————————————————————————— 记录一下rancher的学习与使用过程 本部分内容包括rancher的介绍、特点、与k8s关系和部署等内容 ———————————————————————————— Rancher是什么&#xff1f; 简单来说&#xff0c;Ranc…

item_password获得淘口令真实urlAPI接口输入淘口令代码获取淘口令url

要获取淘口令真实url&#xff0c;首先需要注册一个Api Key和Api Secret。接下来&#xff0c;可以使用淘口令API接口来获取淘口令的真实url。 item_password-获得淘口令真实url 公共参数 名称类型必须描述keyString是调用key&#xff08;必须以GET方式拼接在URL中&#xff09;s…

BIDI的单芯双向光模块是在用哪里的?

为什么要选择BIDI光模块&#xff1f; BIDI光学模块最明显的优点&#xff0c;如SFP BIDI光学模块或SFP BIDI光学模块&#xff0c;可以减少光纤跳线面板上的端口数量&#xff0c;节省光纤布线基础设施的成本&#xff0c;减少布线空间&#xff0c;方便光纤的管理&#xff0c;减少…

什么是电子邮件加密?电子邮件加密有几种类型?

在当今数字时代&#xff0c;电子邮件已经成为人们日常生活中不可或缺的沟通工具&#xff0c;据相关数据统计&#xff0c;全球每天发送的电子邮件数以亿计&#xff0c;而这些邮件里面通常包含了姓名、地址、个人身份信息 (PII)、登录凭证、财务信息、法律合同、知识产权等有价值…

ssh: Could not resolve hostname xxx: Name or service not known

参考文章:https://blog.csdn.net/bewhyw/article/details/134452826 修改etc/hosts中的文件&#xff0c;加入所有主机的地址映射即可&#xff1a; vi /etc/hosts