C语言从头学12——流程控制(一)

2024-05-28 03:28
文章标签 语言 流程 控制 从头

本文主要是介绍C语言从头学12——流程控制(一),希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

       C语言程序的执行顺序是从前到后依次序执行的。如果想要控制程序执行的流程,就必须使用
流程控制的语法结构,分为条件执行和循环执行。
1、if语句
        if 语句在前面的举例中曾经出现过,这里做详细介绍。该语句用于条件判断,满足条件时,就执行指定的语句。
        格式一、 if (条件表达式) 要执行语句 //含义:如果"条件表达式 "为"真" 则执行 "要执行的语句",否则就跳过去。例如:

if(x==5) printf("x的值是5"); //运行结果:只有当x等于5时,才显示"x的值是5"

       如果 "要执行的语句" 有两条及以上,就需要把 "要执行的语句" 用大括号括起来,一般另起一行更清楚。格式如下:
            if ( 条件表达式 )
            {
               语句1;
               ......
               语句n;//要执行语句后边必须有分号";"
            } //大括号后边不用加分号(";")
     实际上,即使只有一条要执行的语句加上大括号后在逻辑上也显得更清楚。
     格式二、if (条件表达式)
            {
               语句1;
               .....
               语句n;
            } else //这里有一个else,在其后执行"条件表达式"为"假"的语句
            {
               语句1;
               .....
               语句n;
            }
   另外,else 后边还可以与另if语句连用,形成嵌套结构,格式如下:
    if (条件表达式1)
      {语句或语句块1;}
         else if (条件表达式2)
           {语句或语句块2;}
            ......
          else if(条件表达式n-1)
            {语句或语句块n-1;}
            else
               {语句或语句块n;} //收底语句
      顺带说一句,编辑代码时,根据执行的层次进行适当缩进,可以在看代码时逻辑更清楚。
      据说多层嵌套的if...else...if结构不是好的结构形式,容易出错,尽量不用。
2、三目运算符 "?  :"
     三目运算符可以看做是if...else结构的简写。
     格式:(条件表达式) ? (表达式1或值1) : (表达式2或值2) // 括号非必须 
     条件表达式为真返 (表达式1或值1),否则 (返回表达式2或值2)
 3、switch语句
     switch语句可以说是if...else语句的变种,用于判断有多个结果的情况。看起来比if...else
 语句更清楚。格式如下:
     switch(有返回值的表达式或变量)
     {
          case 返回值1: 语句1
                    break; //为了执行完相应语句后跳出switch结构,在下一case语句前
                           //加一个break以结束switch
         case 返回值n: 语句n
                    break;
         .......
         default: 兜底语句; //兜底语句后不用加break,后边没有要执行的语句了
    }
  switch 这种结构,多用于编写菜单代码。
 4、用上面介绍的流程控制语句编写一个小程序,用以加深对流程控制的理解。

#include<stdio.h>
int main(void)
{
//1、if语句的使用int a = 100;if (a > 50) printf("a的值大于50\n"); //条件后只有一个语句时可省去{}if (a == 100) //if..else...结构{printf("a的值等于100\n"); //条件成立执行此语句}else{printf("a的值不等于100\n"); //条件不成立执行此语句}
//2、三目运算符的使用int x = 1;a=500;int y;y = (x == 1) ? a : 50; //条件成立返回500,不成立返回50printf("y的值是%i\n", y);
//3、swich语句的使用int choice = 4;switch (choice){case 0: printf("choice的值是0\n");case 1: printf("choice的值是1\n");case 2: printf("choice的值是2\n");default:printf("choice的值不是1、2、3\n");}getchar();return 0;
}
//运行结果:
/*
a的值大于50
a的值等于100
y的值是500
choice的值不是1、2、3
*/

这篇关于C语言从头学12——流程控制(一)的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/1009409

相关文章

深入理解Go语言中二维切片的使用

《深入理解Go语言中二维切片的使用》本文深入讲解了Go语言中二维切片的概念与应用,用于表示矩阵、表格等二维数据结构,文中通过示例代码介绍的非常详细,需要的朋友们下面随着小编来一起学习学习吧... 目录引言二维切片的基本概念定义创建二维切片二维切片的操作访问元素修改元素遍历二维切片二维切片的动态调整追加行动态

浅析Spring如何控制Bean的加载顺序

《浅析Spring如何控制Bean的加载顺序》在大多数情况下,我们不需要手动控制Bean的加载顺序,因为Spring的IoC容器足够智能,但在某些特殊场景下,这种隐式的依赖关系可能不存在,下面我们就来... 目录核心原则:依赖驱动加载手动控制 Bean 加载顺序的方法方法 1:使用@DependsOn(最直

Go语言中make和new的区别及说明

《Go语言中make和new的区别及说明》:本文主要介绍Go语言中make和new的区别及说明,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教... 目录1 概述2 new 函数2.1 功能2.2 语法2.3 初始化案例3 make 函数3.1 功能3.2 语法3.3 初始化

Spring Security中用户名和密码的验证完整流程

《SpringSecurity中用户名和密码的验证完整流程》本文给大家介绍SpringSecurity中用户名和密码的验证完整流程,本文结合实例代码给大家介绍的非常详细,对大家的学习或工作具有一定... 首先创建了一个UsernamePasswordAuthenticationTChina编程oken对象,这是S

Go语言中nil判断的注意事项(最新推荐)

《Go语言中nil判断的注意事项(最新推荐)》本文给大家介绍Go语言中nil判断的注意事项,本文给大家介绍的非常详细,对大家的学习或工作具有一定的参考借鉴价值,需要的朋友参考下吧... 目录1.接口变量的特殊行为2.nil的合法类型3.nil值的实用行为4.自定义类型与nil5.反射判断nil6.函数返回的

Go语言数据库编程GORM 的基本使用详解

《Go语言数据库编程GORM的基本使用详解》GORM是Go语言流行的ORM框架,封装database/sql,支持自动迁移、关联、事务等,提供CRUD、条件查询、钩子函数、日志等功能,简化数据库操作... 目录一、安装与初始化1. 安装 GORM 及数据库驱动2. 建立数据库连接二、定义模型结构体三、自动迁

Go语言代码格式化的技巧分享

《Go语言代码格式化的技巧分享》在Go语言的开发过程中,代码格式化是一个看似细微却至关重要的环节,良好的代码格式化不仅能提升代码的可读性,还能促进团队协作,减少因代码风格差异引发的问题,Go在代码格式... 目录一、Go 语言代码格式化的重要性二、Go 语言代码格式化工具:gofmt 与 go fmt(一)

Spring如何使用注解@DependsOn控制Bean加载顺序

《Spring如何使用注解@DependsOn控制Bean加载顺序》:本文主要介绍Spring如何使用注解@DependsOn控制Bean加载顺序,具有很好的参考价值,希望对大家有所帮助,如有错误... 目录1.javascript 前言2. 代码实现总结1. 前言默认情况下,Spring加载Bean的顺

Android ViewBinding使用流程

《AndroidViewBinding使用流程》AndroidViewBinding是Jetpack组件,替代findViewById,提供类型安全、空安全和编译时检查,代码简洁且性能优化,相比Da... 目录一、核心概念二、ViewBinding优点三、使用流程1. 启用 ViewBinding (模块级

基于Python开发Windows屏幕控制工具

《基于Python开发Windows屏幕控制工具》在数字化办公时代,屏幕管理已成为提升工作效率和保护眼睛健康的重要环节,本文将分享一个基于Python和PySide6开发的Windows屏幕控制工具,... 目录概述功能亮点界面展示实现步骤详解1. 环境准备2. 亮度控制模块3. 息屏功能实现4. 息屏时间