0
  • 聊天消息
  • 系统消息
  • 评论与回复
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看技术视频
  • 写文章/发帖/加入社区
创作中心

完善资料让更多小伙伴认识你,还能领取20积分哦,立即完善>

3天内不再提示

C程序流程设计之选择结构

汽车电子技术 来源:嵌入式悦翔园 作者:JamesBin 2023-02-17 14:26 次阅读

程序流程图又称程序框图,是用统一规定的标准符号描述程序运行具体步骤的图形表示。程序框图的设计是在处理流程图的基础上,通过对输入输出数据和处理过程的详细分析,将计算机的主要运行步骤和内容标识出来。程序框图是进行程序设计的最基本依据,因此它的质量直接关系到程序设计的质量。

一、语句概述

C语句:以“;”作分隔符,编译后产生机器指令。

C语句分类:

表达式语句:表达式加分号构成。
空语句:;
复合语句:用 {…}括起来的一组语句
一般形式:{     [数据说明部分;]
                    执行语句部分;
            } 
说明:
      “}”后不加分号
      语法上和单一语句相同
      复合语句可嵌套

二、程序的三种结构

结构化程序设计

基本思想:任何程序都可以用三种基本结构表示,限制使用无条件转移语句(goto)

结构化程序:由三种基本结构反复嵌套构成的程序叫~

优点:结构清晰,易读,提高程序设计质量和效率

三种基本结构

顺序结构

图片

选择结构

图片

循环结构

图片

注:A,B,A1….An可以是一个简单语句,也可以是一个基本结构

三、if选择设计

if语句(条件选择语句)

if语句的三种形式

形式一:

格式:if (expression)   statement

执行过程:

if (x>y)
        printf(“%d”,x);

图片

形式二:

格式:

if (expression)  statement
                     else   statement2

执行过程:

if (x>y)   max=x;
       else         max=y;

图片

形式三:

格式:

if ( expr1 )            statement1
else if (expr2 )      statement2
else if (expr3 )      statement3
…...
[ else              statementn  ]

执行过程:

例:if (salary>1000)            index=0.4; 
        else if (salary>800)       index=0.3;
        else if (salary>600)       index=0.2;
        else if (salary>400)       index=0.1;
        else                                index=0;

图片

说明:

if后面的表达式类型任意

语句可以是复合语句

if(x)  <->if(x!=0)
if(!x) <->if(x==0)
例如:if(a==b&&x==y)    printf(“a=b,x=y”);
      if(3)    printf(“OK”);
      if(‘a’)   printf(“%d”,’a’);

例 考虑下面程序的输出结果:

#include 
     main()
    {   int x,y;
         scanf(“%d,%d”,&x,&y);
         if(x>y)
             x=y;   y=x;
         else
             x++; y++;
         printf(“%d,%d\\n”,x,y);
}

运行结果:

Compile Error!

if语句嵌套

if (expr1)
        if (expr2)   
              statement1
        else   
            statement2
if (expr1)
        if (expr2)   
             statement1
else
       statement3
if (expr1)
       statement1
else
        if(expr3)    
              statement3
        else   
             statement4
if (expr1)
        if (expr2)   statement1
        else           statement2
else
        if(expr3)    statement3
        else            statement4

例 输入两数并判断其大小关系

#include 
main()
{   int x,y;
    printf("Enter integer x,y:");
    scanf("%d,%d",&x,&y);
    if(x!=y)
       if(x>y)  printf("X>Y\\n");
       else     printf("X);
    else
       printf("X==Y\\n");
}

运行结果:

Enter  integer  x,y:12,23
            XEnter  integer  x,y:12,6
            X>Y
           Enter  integer  x,y:12,12
            X==Y

if ~ else 配对原则:缺省{ }时,else总是和它上面离它最近的未配对的if配对

if(……)
    if(……)
        if(……)
        else…...
    else…...
else…...

例如:

if (a==b)
    if(b==c)
    printf(“a==b==c”);
else
     printf(“a!=b”);

修改后

if (a==b)
{      if(b==c)
       printf(“a==b==c”);
}
else
    printf(“a!=b”);

实现if~ else 正确配对方法:加{ }

四、switch语句

一般形式:

switch( 表达式)
{      case     E1:
                    语句组 1;
                    break;
        case     E2:
                   语句组 2;
                    break;
         …….
        case    En:
                  语句组 n;
                   break;
        [default:
                   语句组 ;
                    break;]
}

执行过程:

图片

说明:

E1,E2,…En是常量表达式,且值必须互不相同
语句标号作用,必须用break跳出
case后可包含多个可执行语句,且不必加{ }
switch可嵌套
多个case可共用一组执行语句

例如:

switch(score)
    {       case    5:    printf(“Very good!”);
             case    4:    printf(“Good!”);
             case    3:    printf(“Pass!”);
             case    2:    printf(“Fail!”);
             default  :    printf(“data error!”);
      }

运行结果:score为5时,输出:

Very good! Good! Pass! Fail! data error!
声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉
  • 流程图
    +关注

    关注

    2

    文章

    61

    浏览量

    18610
  • 程序设计
    +关注

    关注

    3

    文章

    258

    浏览量

    30184
  • 程序框图
    +关注

    关注

    0

    文章

    8

    浏览量

    8373
收藏 人收藏

    评论

    相关推荐

    选择结构程序设计

    选择结构程序设计要设计选择结构程序,要考虑两个方面的问题:一是在
    发表于 03-10 15:06

    labview控制程序流程——labview事件结构

    本帖最后由 zhihuizhou 于 2011-11-14 16:14 编辑 labview控制程序流程——labview事件结构 事件驱动机制在图形化操作系统中被广泛使用,因为图形化操作系统
    发表于 11-10 17:07

    案例分享DDR拓扑结构选择

    作者:一博科技DDR的拓扑结构选择也是一个老生常谈的话题了,从最初只能采用T拓扑到支持读写平衡的Fly-by拓扑,设计似乎变得越来越简单了。大家来看这样一种情况,一个驱动拖动两片DDR颗粒,芯片支持
    发表于 12-01 11:49

    visio画程序流程

    ”更改字体的各种格式,例如字体、字号、颜色。 (3)选择“常用工具栏”连接线工具,将各个图形符号连接起来。 (4)完毕。 二、制作分支结构流程图(见图2) 例2:编写一个加法练习程序
    发表于 07-03 00:19

    CAN发送流程程序选择

    硬件连接需要两个开发板1.CRX和PA11短接,CTX和PA12短接2.用杜邦线连接两个开发板,CANL连CANL,CANH连CANHCAN发送流程程序选择 1 个空置的邮箱(TME=1)->
    发表于 08-19 08:33

    LabVIEW的程序结构

    LabVIEW的程序结构:主要的程序结构有:循环(While循环和For循环)选择(Case结构)顺序(Sequence结构)事件(Even
    发表于 06-22 12:33 0次下载

    选择结构程序设计

    实验  选择结构程序设计 一、实验目的(1)掌握逻辑表达式的正确书写形式。(2)学会单分支和双分支结构程序的使用。(3)学
    发表于 09-23 19:27 1969次阅读

    C语言教程之选择结构程序设计资料概述和设计实例免费下载

    本文档的主要内容详细介绍的是C语言教程之选择结构程序设计资料概述和设计实例免费下载包括了:1.if条件分支结构2.switch-case开关语句3.
    发表于 09-19 17:21 8次下载
    C语言教程之<b class='flag-5'>选择</b><b class='flag-5'>结构</b><b class='flag-5'>程序</b>设计资料概述和设计实例免费下载

    C语言程序设计实用教程之如何进行顺序程序资料和程序概述

    C程序流程一般分为顺序结构选择结构和循环结构。 顺序
    发表于 10-31 18:04 1次下载
    C语言<b class='flag-5'>程序</b>设计实用教程之如何进行顺序<b class='flag-5'>程序</b>资料和<b class='flag-5'>程序</b>概述

    C语言程序设计实用教程之如何选择结构程序设计

    本文档的主要内容详细介绍的是C语言程序设计实用教程之如何选择结构程序设计:1 关系运算符和关系表达式 2 逻辑运算符逻辑表达式 3 if语句 4 switch语句 5
    发表于 10-31 18:04 6次下载
    C语言<b class='flag-5'>程序</b>设计实用教程之如何<b class='flag-5'>选择</b><b class='flag-5'>结构</b><b class='flag-5'>程序</b>设计

    C语言程序设计教程之选择结构的资料讲解

    本文档的主要内容详细介绍的是C语言程序设计教程之选择结构的资料讲解主要内容包括了:1 语句与复合语句,2 if 语 句,3 if…else结构,4 条件运算符,5 switch
    发表于 01-08 14:19 11次下载
    C语言<b class='flag-5'>程序</b>设计教程之<b class='flag-5'>选择</b><b class='flag-5'>结构</b>的资料讲解

    C语言程序设计教程之选择结构程序设计的资料说明

    本文档的主要内容详细介绍的是C语言程序设计教程之选择结构程序设计的资料说明。
    发表于 02-21 14:26 4次下载
    C语言<b class='flag-5'>程序</b>设计教程之<b class='flag-5'>选择</b><b class='flag-5'>结构</b><b class='flag-5'>程序</b>设计的资料说明

    C语言实用教程之程序的控制结构资料说明

    本文档详细介绍的是C语言实用教程之程序的控制结构资料说明主要内容包括了:1 算法及其描述方法,2 顺序结构,3 选择结构,4 循环
    发表于 02-26 16:56 6次下载
    C语言实用教程之<b class='flag-5'>程序</b>的控制<b class='flag-5'>结构</b>资料说明

    C语言程序设计第四讲结构程序设计之选择

    C语言程序设计第四讲结构程序设计之选择
    发表于 12-22 10:34 0次下载

    C语言基础篇--选择/顺序/循环结构

    的方式逐条执行各语句。简易顺序结构如下所示:分支结构分支结构,又称选择结构,可以控制程序的部分
    的头像 发表于 04-02 11:00 912次阅读
    C语言基础篇--<b class='flag-5'>选择</b>/顺序/循环<b class='flag-5'>结构</b>