首页
学习
活动
专区
圈层
工具
发布
社区首页 >专栏 >【C语言程序设计——选择结构程序设计】求阶跃函数的值(头歌实践教学平台习题)【合集】

【C语言程序设计——选择结构程序设计】求阶跃函数的值(头歌实践教学平台习题)【合集】

作者头像
Rossy Yan
修改2024-12-26 10:12:40
修改2024-12-26 10:12:40
2840
举报

任务描述

本关任务:输入x的值,求下列阶跃函数的值,并打印输出结果。

y=\left\{ \begin{matrix} x & (x<1)\\ 2x - 1 & (1\leq x\leq 10)\\ 3x - 11 & (x\geq 10) \end{matrix} \right.
y=\left\{ \begin{matrix} x & (x<1)\\ 2x - 1 & (1\leq x\leq 10)\\ 3x - 11 & (x\geq 10) \end{matrix} \right.

相关知识

为了完成本关任务,你需要掌握:

  1. 选择结构基本概念
  2. 选择结构主要语句类型
  3. 判断跃迁函数中变量的取值范围
  4. 根据条件计算阶跃函数的值
  • 选择结构

选择结构程序设计是一种程序设计的基本结构,它允许程序根据给定的条件来决定执行不同的代码分支。在程序运行过程中,通过对条件表达式的判断,使得程序的执行流程产生不同的走向,就像在人生的岔路口,根据不同的情况(条件)选择不同的道路(代码分支)前进。 这种结构是实现程序逻辑判断的关键部分,能够让程序具有一定的智能性,根据不同的输入或者程序运行中的状态做出相应的反应。

  • 主要语句类型
  • if 语句:这是最基本的选择结构语句。它的基本形式是if (条件表达式) { 执行语句块1 }。例如,在一个判断学生成绩是否及格的程序中,可以写成if (score >= 60) { printf("及格"); }。当score >= 60这个条件表达式成立时,就会执行花括号内的printf("及格");语句,输出 “及格”;如果条件不成立,就跳过这个语句块,继续执行后面的代码。
  • if - else 语句:是if语句的扩展形式,格式为if (条件表达式) { 执行语句块1 } else { 执行语句块2 }。继续以学生成绩为例,if (score >= 60) { printf("及格"); } else { printf("不及格"); }。这样,当成绩大于等于 60 时输出 “及格”,不满足这个条件时(即成绩小于 60)输出 “不及格”,保证了在两种可能的情况下都有对应的执行语句。
  • switch 语句:适用于多分支的情况,当需要判断的条件有多个固定的值时使用。例如,在一个根据星期几来输出课程安排的程序中,可以使用switch语句。其基本形式是switch (表达式) { case 值1: 执行语句块1; break; case 值2: 执行语句块2; break;... default: 执行语句块n; }。假设用数字 1 - 7 表示星期一到星期日,int day = 3; switch (day) { case 1: printf("语文、数学"); break; case 2: printf("英语、物理"); break; case 3: printf("化学、生物"); break;... default: printf("没有课程安排"); },当day的值为 3 时,就会执行case 3后面的printf("化学、生物"); break;语句,输出 “化学、生物”,break语句的作用是跳出switch语句,防止继续执行下面的case分支。
  • 跃迁函数中变量的取值范围

要判断跃迁函数中变量的取值范围,首先需理解函数类型与定义。例如常见的阶跃函数

H(x)=\left\{ \begin{matrix} 0 & (x<0)\\ 1 & (x\geq 0)\end{matrix} \right.
H(x)=\left\{ \begin{matrix} 0 & (x<0)\\ 1 & (x\geq 0)\end{matrix} \right.

, 这是一个简单的

0
0

从跃迁到

1
1

的函数,其变量

x
x

的取值范围直接决定了函数的输出值。在这个例子中,变量

x
x

的取值范围是整个实数集

\left (-\infty ,+\infty\right )
\left (-\infty ,+\infty\right )

,但根据

x
x

0
0

的大小关系,函数输出不同的值。

  • 计算阶跃函数的值

例如,对于上述跃迁函数,要计算

H\left ( -3 \right )
H\left ( -3 \right )

的值,因为

-3<0
-3<0

,根据阶跃函数的定义,

H(-3)=0
H(-3)=0

。再比如计算

H(2)
H(2)

的值,由于

2\geq 0
2\geq 0

,所以

H(2)=1
H(2)=1

编程要求

根据提示,在右侧编辑器 Begin-End 之间补充代码,计算并输出对应二次方程的根。

测试说明

平台会对你编写的代码进行测试:

测试输入: -1

预期输出: y=-1

测试输入: 9

预期输出: y=17

测试输入: 20

预期输出: y=49

开始你的任务吧,祝你成功!


我的通关代码:
代码语言:javascript
复制
#include "stdio.h"
int main()
{
	int x,y;
	//printf("请输入x的值");
	/*********Begin*********/
	scanf("%d",&x);

    if (x < 1){
        y = x ;
    } else if(1 <=x && x<=10 ){
        y = 2 * x - 1;
    } else {
        y = 3 * x - 11;
    }

    printf("y=%d",y);

    return 0;  
   /*********End**********/ 
}

测试结果:

我的博客即将同步至腾讯云开发者社区,邀请大家一同入驻:https://cloud.tencent.com/developer/support-plan?invite_code=9brtpubdd0s

本文参与 腾讯云自媒体同步曝光计划,分享自作者个人站点/博客。
原始发表:2024-12-21,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • 任务描述
  • 相关知识
  • 编程要求
  • 测试说明
    • 我的通关代码:
    • 测试结果:
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档