C语言之选择分支语句详解

C语言之选择分支语句详解

在C语言中,选择分支语句主要用来根据某些条件来决定程序运行的不同路径,通常有以下三种形式:

  • if语句
  • switch语句
  • 三目运算符

if语句

if语句的一般形式如下:

if (条件表达式) {
    // 条件满足时执行的代码块
}

例如,下面的代码将根据用户输入的数字来判断其是正数、负数还是零:

#include <stdio.h>

int main() {
    int num;
    printf("请输入一个整数:");
    scanf("%d", &num);

    if (num > 0) {
        printf("%d是正数\n", num);
    } else if (num < 0) {
        printf("%d是负数\n", num);
    } else {
        printf("您输入的是0\n");
    }

    return 0;
}

在上面的代码中,条件表达式 num > 0 判断 num 是否大于0,如果满足条件,则会执行花括号中的语句;否则,自动跳过这个代码块并接着执行后面的语句。

switch语句

switch语句是根据一个表达式的值来选择要执行的代码块。其一般形式如下:

switch (表达式) {
    case 值1:
        // 当表达式的值等于值1时需要执行的代码块
        break;
    case 值2:
        // 当表达式的值等于值2时需要执行的代码块
        break;
    // ...
    default:
        // 表达式的值不等于任何一个值时需要执行的默认代码块
        break;
}

例如,下面的代码将根据用户输入的字符来执行不同的操作:

#include <stdio.h>

int main() {
    char ch;
    printf("请输入一个小写字母:");
    scanf("%c", &ch);

    switch (ch) {
        case 'a':
            printf("您输入的是a\n");
            break;
        case 'b':
            printf("您输入的是b\n");
            break;
        case 'c':
            printf("您输入的是c\n");
            break;
        default:
            printf("您输入的不是a、b或c\n");
            break;
    }

    return 0;
}

在上面的代码中,根据用户输入的字符 ch 来执行不同的操作,如果 ch 是'a'、'b'或'c'中的一个,则分别输出相应的提示信息,否则输出一个默认信息。

三目运算符

三目运算符是一种简单的选择分支语句,其一般形式如下:

表达式1 ? 表达式2 : 表达式3

如果表达式1为真,则返回表达式2的值,否则返回表达式3的值。

例如,下面的代码将根据用户输入的数字来判断其是正数还是负数:

#include <stdio.h>

int main() {
    int num;
    printf("请输入一个整数:");
    scanf("%d", &num);

    num >= 0 ? printf("%d是正数\n", num) : printf("%d是负数\n", num);

    return 0;
}

在上面的代码中,条件表达式 num >= 0 判断 num 是否大于等于0,如果满足条件,则返回输出正数的信息;否则,返回输出负数的信息。

接下来的这个示例代码,将输入一个成绩,然后输出成绩所属的等级(如90分以上为A级):

#include <stdio.h>

int main() {
    int score;
    printf("请输入成绩:");
    scanf("%d", &score);

    char level = score >= 90 ? 'A' : (score >= 80 ? 'B' : (score >= 70 ? 'C' : (score >= 60 ? 'D' : 'E')));
    printf("您的成绩是%d,属于%c级别\n", score, level);

    return 0;
}

在上面的代码中,使用了嵌套的三目运算符来判断成绩所属的等级,按照从高到低的顺序进行判断。如果成绩大于等于90分,则返回字符'A';否则,继续判断成绩是否大于等于80分,如果是则返回字符'B',否则继续向下判断,依此类推。

本站文章如无特殊说明,均为本站原创,如若转载,请注明出处:C语言之选择分支语句详解 - Python技术站

(0)
上一篇 2023年5月24日
下一篇 2023年5月24日

相关文章

  • golang生成JSON以及解析JSON

    生成JSON: 在golang中生成JSON非常简单,可以使用标准库中的encoding/json包来实现。下面是一个示例代码: package main import ( "encoding/json" "fmt" ) type Person struct { Name string `json:"name…

    C 2023年5月23日
    00
  • Python使用LRU缓存策略进行缓存的方法步骤

    Python使用LRU缓存策略进行缓存是比较常见的一种优化手段。下面是LRU缓存的实现步骤: 1.导入lru_cache库 使用LRU缓存需要导入lru_cache库。在Python 3中,lru_cache库已经成为了标准库,不需要安装。 2.定义函数并添加缓存装饰器 在定义函数时,需要添加缓存装饰器@lru_cache。这个装饰器带有一个maxsize参…

    C 2023年5月23日
    00
  • C++实现评教管理系统

    下面我将详细讲解C++ 实现评教管理系统的完整攻略。 1. 确定需求 在开始编写代码之前,我们需要明确需求。在该项目中,我们需要实现一个评教管理系统,包含学生登录、教师登录、评教功能等。 2. 设计数据库 在设计数据库时,我们需要确定数据库的表结构和字段,其中包括学生表、教师表和评教表。例如: 学生表: 字段 数据类型 描述 id int 学号 name v…

    C 2023年5月30日
    00
  • C++中的对象数组详细解析

    C++中的对象数组详细解析 什么是对象数组 对象数组是指由多个相同类型的对象依次排列组成的数组。在 C++ 中,一个对象数组一旦被定义,就会在内存中分配相应的空间,同时数组名也被定义为一个指向该数组首元素的指针。 定义一个对象数组示例: class Person { public: Person(string name, int age) { this-&g…

    C 2023年5月22日
    00
  • 推箱子游戏C语言实现代码

    推箱子游戏是一款古老而经典的智力游戏,在这里我将详细讲解如何使用C语言实现这个游戏。以下是实现过程的完整攻略: 设计概述 在实现前,我们需要进行一些设计工作。推箱子游戏可以被看作是一个二维迷宫,我们需要设计一个二维数组来表示地图。数组元素可以是空地、墙壁、箱子或目标点。我们可以使用数字来表示不同的元素,例如0表示空地、1表示墙壁、2表示箱子、3表示目标点。我…

    C 2023年5月23日
    00
  • 基于C语言实现图书管理信息系统设计

    基于C语言实现图书管理信息系统设计攻略 1.需求分析 在实现图书管理信息系统之前,我们需要对系统的需求进行分析,以确定系统应该满足哪些功能要求。例如: 管理员和用户登录/注销功能 添加/删除/修改图书信息功能 借阅/归还图书功能 查询图书/借阅记录功能 2.系统设计 在完成需求分析之后,我们需要根据需求设计系统架构,确定各个部分之间的关系。例如: 界面设计:…

    C 2023年5月23日
    00
  • C语言详解UDP通信的实现

    针对您提到的话题“C语言详解UDP通信的实现”的完整攻略,我将为您提供以下内容。 UDP是什么 UDP(User Datagram Protocol)是一种无连接协议,它在通信时不需要建立连接,因此速度快,但是容易发生数据丢失和乱序。UDP适合在局域网内传输数据。 C语言如何实现UDP通信 C语言具有强大的网络编程功能,要实现UDP通信,我们需要调用sock…

    C 2023年5月23日
    00
  • 详解C++中的inline用法

    关于C++中的inline用法,我将给您详细讲解一下。本攻略包含以下内容: 什么是inline inline的使用方法 inline的使用场景 两个示例说明 1. 什么是inline inline 是C++中的一个关键字,表示内联函数。它是一种可以提高程序运行时性能的优化手段。 简而言之,在C++中,编译器一般会将函数调用转换为栈帧的操作,而使用 inlin…

    C 2023年5月23日
    00
合作推广
合作推广
分享本页
返回顶部