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

yizhihongxing

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日

相关文章

  • grubinst2使用方法 Grubinst初级使用教程

    grubinst2使用方法 Grubinst初级使用教程 Grubinst是一款基于GNU GRUB的软件,用于安装或更新GRUB引导程序。Grubinst2是其最新版本,提供更多的功能和便利。本教程将详细介绍Grubinst2的使用方法,以帮助网站的读者更好地使用Grubinst进行操作。 安装Grubinst2 首先需要在官方网站https://www.…

    C 2023年5月22日
    00
  • C++内嵌汇编示例详解

    对于C++内嵌汇编示例的详解,可以从以下几个方面进行讲解: 1.概述:什么是内嵌汇编 内嵌汇编是指将汇编代码嵌入到C或C++程序中的技术,可以直接在C++源代码中嵌入汇编语言,通过内嵌汇编可以利用汇编语言的精细化控制实现高效的代码。 2.内嵌汇编说明 在C++中内嵌汇编可以使用asm关键字来实现,类似于以下形式: asm (assembly content)…

    C 2023年5月23日
    00
  • shared_ptr线程安全性全面分析

    shared_ptr线程安全性全面分析 什么是shared_ptr shared_ptr是C++11标准库中的一个智能指针类,用来管理动态分配的对象,解决了原始指针(裸指针)所需的手动释放内存和防止内存泄漏等问题,同时也可以避免使用不当,如double free(重复释放已释放的内存)和dangling pointer(悬空指针)等问题。 shared_pt…

    C 2023年5月22日
    00
  • C语言 for循环

    下面我来详细讲解“C语言 for循环”的完整使用攻略。 for循环使用 在C语言中,for循环语句可以用来重复执行某个代码块,它的语法结构如下: for (初始化表达式; 判断表达式; 计数器更新表达式) { // 循环执行的语句 } 其中,初始化表达式仅在循环开始前执行一次,通常用于初始化循环控制变量;判断表达式用于判断是否继续执行循环,如果为真,则继续循…

    C 2023年5月9日
    00
  • 详解如何使用VSCode和CMake构建跨平台的C/C++开发环境

    详解如何使用VSCode和CMake构建跨平台的C/C++开发环境 在本文中,我们将介绍如何使用VSCode和CMake构建跨平台的C/C++开发环境。CMake是一个跨平台的构建系统,可以在不同的操作系统和编译器下生成不同的构建配置,使得开发者可以方便地将代码移植到不同的平台上。而VSCode则是一个轻量级但功能强大的文本编辑器,集成了多种插件和功能,支持…

    C 2023年5月23日
    00
  • 基于C++实现的线程休眠代码

    下面是基于C++实现的线程休眠的攻略。 1. 线程休眠简介 在C++中,我们可以通过调用线程库的函数来实现线程休眠。线程休眠的作用是使线程在一定的时间内暂停执行,接下来再从停止的地方继续执行。 2. 使用sleep()函数实现线程休眠 C++中的线程库中提供了sleep()函数,其原型如下: #include <unistd.h> unsigne…

    C 2023年5月22日
    00
  • C语言中如何在结构体内定义函数

    在C语言中,我们可以在结构体内定义函数。这些函数通常被称为结构体的“成员函数”或“方法”。在本文中,将为大家提供关于如何在结构体内定义函数的详细攻略,包括选定结构体、定义函数、实现函数等步骤。 选定结构体 首先你需要选定合适的结构体,以便将要定义的函数与此结构体相关联。可以基于结构体表示某一事物,例如下面的学生成绩结构体: typedef struct { …

    C 2023年5月23日
    00
  • c语言调用汇编的方法

    如果要使用C语言调用汇编代码,需要遵循以下步骤: 1.编写汇编代码 首先需要编写用汇编编写的子程序,然后将其用 NASM 或 GAS 等汇编编译器编译成可重定位目标文件(.o 或 .obj)。 汇编代码应该遵循调用规则,即使用与 C函数相同的堆栈布局和参数传递约定。根据不同的平台,具体约定会有所不同。 2.编写头文件,定义函数原型 我们需要将编写的汇编函数当…

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