iis服务器助手广告广告
返回顶部
首页 > 资讯 > 后端开发 > 其他教程 >C语言中的程序结构是什么
  • 713
分享到

C语言中的程序结构是什么

2023-06-08 13:06:36 713人浏览 独家记忆
摘要

这篇文章主要介绍“C语言中的程序结构是什么”,在日常操作中,相信很多人在C语言中的程序结构是什么问题上存在疑惑,小编查阅了各式资料,整理出简单好用的操作方法,希望对大家解答”C语言中的程序结构是什么”的疑惑有所帮助!接下来,请跟着小编一起来

这篇文章主要介绍“C语言中的程序结构是什么”,在日常操作中,相信很多人在C语言中的程序结构是什么问题上存在疑惑,小编查阅了各式资料,整理出简单好用的操作方法,希望对大家解答”C语言中的程序结构是什么”的疑惑有所帮助!接下来,请跟着小编一起来学习吧!

(1)顺序结构

顺序结构的程序设计是最简单的,只要按照解决问题的顺序写出相应的语句就行,它的执行顺序是自上而下,依次执行。

例如:a = 3,b = 5,现交换a,b的值,这个问题就好像交换两个杯子水,这当然要用到第三个杯子,假如第三个杯子是c,那么正确的程序为:

c = a;   a = b;   b = c;

执行结果是a = 5,b = c = 3如果改变其顺序,写成:

a = b;   c = a;   b =c;

则执行结果就变成a = b = c = 5,不能达到预期的目的,初学者最容易犯这种错误。顺序结构可以独立使用构成一个简单的完整程序,常见的输入、计算,输出三步曲的程序就是顺序结构,例如计算圆的面积,其程序的语句顺序就是输入圆的半径r,计算s = 3.14159*r*r,输出圆的面积s。

不过大多数情况下顺序结构都是作为程序的一部分,与其它结构一起构成一个复杂的程序,例如分支结构中的复合语句、循环结构中的循环体等。

(2) 分支结构

顺序结构的程序虽然能解决计算、输出等问题,但不能做判断再选择。对于要先做判断再选择的问题就要使用分支结构。分支结构的执行是依据一定的条件选择执行路径,而不是严格按照语句出现的物理顺序。分支结构的程序设计方法的关键在于构造合适的分支条件和分析程序流程,根据不同的程序流程选择适当的分支语句。

分支结构适合于带有逻辑或关系比较等条件判断的计算,设计这类程序时往往都要先绘制其程序流程图,然后根据程序流程写出源程序,这样做把程序设计分析与语言分开,使得问题简单化,易于理解。程序流程图是根据解题分析所绘制的程序执行流程图。

学习分支结构不要被分支嵌套所迷惑,只要正确绘制出流程图,弄清各分支所要执行的功能,嵌套结构也就不难了。嵌套只不过是分支中又包括分支语句而已,不是新知识,只要对双分支的理解清楚,分支嵌套是不难的。下面我介绍几种基本的分支结构。

①if(条件){分支体}

这种分支结构中的分支体可以是一条语句,此时“{}”可以省略,也可以是多条语句即复合语句。它有两条分支路径可选,一是当条件为真,执行分支体,否则跳过分支体,这时分支体就不会执行。如:要计算x的绝对值,根据绝对值定义,我们知道,当x>=0时,其绝对值不变,而x<0时其绝对值是为x的反号,因此程序段为:if(x<0)x=-x;

if(条件)   {分支1}   else   {分支2}

这是典型的分支结构,如果条件成立,执行分支1,否则执行分支2,分支1和分支2都可以是1条或若干条语句构成。

如:求ax^2+bx+c=0的根

分析:因为当b^2-4ac>=0时,方程有两个实根,否则(b^2-4ac<0)有两个共轭复根。其程序段如下:

main()  {  int a,b,c,d,x,y;  printf("Please put the number of a,b&c from the quadratic equation of one variable one by one\n");  scanf("%d%d%d",&a,&b,&c);  d=b*b-4*a*c;  if(d<0)  {  printf("NO Root!Wrong!\n");  }  else {  y=-b-sqrt(d)/2*a;  x=-b+sqrt(d)/2*a;  printf("The 1st equation root=%d\nThe 2nd equation root=%d",y,x);  }  }

③IF嵌套分支语句:

其语句格式为:

if(条件1) {分支1}  else if(条件2) {分支2}   else if(条件3) {分支3}   &hellip;&hellip;   else if(条件n) {分支n}   else {分支n+1}   FOR嵌套,其语句格式为:  for(初值A;范围A;步长A)  {  for(初值B;范围B;步长B)  {  循环体  }  }

FOR嵌套例子:九九乘法表

main()  {  int a,b,c;  for(a=1;a<=9;a++)  {  for(b=1;b<=a;b++)  {  c=b*a;  printf("%dx%d=%d ",b,a,c);  }  printf("\n");  }  }

嵌套分支语句虽可解决多个入口和出口的问题,但超过3重嵌套后,语句结构变得非常复杂,对于程序的阅读和理解都极为不便,建议嵌套在3重以内,超过3重可以用下面的语句。

④switch开关语句

该语句也是多分支选择语句,到底执行哪一块,取决于开关设置,也就是表达式的值与常量表达式相匹配的那一路,它不同if&hellip;else语句,它的所有分支都是并列的,程序执行时,由***分支开始查找,如果相匹配,执行其后的块,接着执行第2分支,第3分支&hellip;&hellip;的块,直到遇到break语句;如果不匹配,查找下一个分支是否匹配。这个语句在应用时要特别注意开关条件的合理设置以及break语句的合理应用。

(3)循环结构:

循环结构可以减少源程序重复书写的工作量,用来描述重复执行某段算法的问题,这是程序设计中最能发挥计算机特长的程序结构,C语言中提供四种循环,即Goto循环、while循环、do?Cwhile循环和for循环。四种循环可以用来处理同一问题,一般情况下它们可以互相代替换,但一般不提倡用goto循环,因为强制改变程序的顺序经常会给程序的运行带来不可预料的错误,在学习中我们主要学习while、do&hellip;while、for三种循环。

常用的三种循环结构学习的重点在于弄清它们相同与不同之处,以便在不同场合下使用,这就要清楚三种循环的格式和执行顺序,将每种循环的流程图理解透彻后就会明白如何替换使用,如把while循环的例题,用for语句重新编写一个程序,这样能更好地理解它们的作用。特别要注意在循环体内应包含趋于结束的语句(即循环变量值的改变),否则就可能成了一个死循环,这是初学者的一个常见错误。

在学完这三个循环后,应明确它们的异同点:用while和do&hellip;while循环时,循环变量的初始化的操作应在循环体之前,而for循环一般在语句1中进行的;while循环和for循环都是先判断表达式,后执行循环体,而do&hellip;while循环是先执行循环体后判断表达式,也就是说do&hellip;while的循环体最少被执行一次,而while循环和for就可能一次都不执行。

另外还要注意的是这三种循环都可以用break语句跳出循环,用continue语句结束本次循环,而goto语句与if构成的循环,是不能用break和 continue语句进行控制的。

顺序结构、分支结构和循环结构并不彼此孤立的,在循环中可以有分支、顺序结构,分支中也可以有循环、顺序结构,其实不管哪种结构,我们均可广义的把它们看成一个语句。在实际编程过程中常将这三种结构相互结合以实现各种算法,设计出相应程序,但是要编程的问题较大,编写出的程序就往往很长、结构重复多,造成可读性差,难以理解,解决这个问题的方法是将C程序设计成模块化结构。

(4)模块化程序结构

C语言的模块化程序结构用函数来实现,即将复杂的C程序分为若干模块,每个模块都编写成一个C函数,然后通过主函数调用函数及函数调用函数来实现一大型问题的C程序编写,因此常说:C程序=主函数+子函数。 因此,对函数的定义、调用、值的返回等中要尤其注重理解和应用,并通过上机调试加以巩固。

到此,关于“C语言中的程序结构是什么”的学习就结束了,希望能够解决大家的疑惑。理论与实践的搭配能更好的帮助大家学习,快去试试吧!若想继续学习更多相关知识,请继续关注编程网网站,小编会继续努力为大家带来更多实用的文章!

--结束END--

本文标题: C语言中的程序结构是什么

本文链接: https://www.lsjlt.com/news/254316.html(转载时请注明来源链接)

有问题或投稿请发送至: 邮箱/279061341@qq.com    QQ/279061341

本篇文章演示代码以及资料文档资料下载

下载Word文档到电脑,方便收藏和打印~

下载Word文档
猜你喜欢
  • C语言中的程序结构是什么
    这篇文章主要介绍“C语言中的程序结构是什么”,在日常操作中,相信很多人在C语言中的程序结构是什么问题上存在疑惑,小编查阅了各式资料,整理出简单好用的操作方法,希望对大家解答”C语言中的程序结构是什么”的疑惑有所帮助!接下来,请跟着小编一起来...
    99+
    2023-06-08
  • C语言中结构体是什么
    这篇文章给大家分享的是有关C语言中结构体是什么的内容。小编觉得挺实用的,因此分享给大家做个参考,一起跟随小编过来看看吧。一.结构体定义C语言结构体由一系列相同或者不同类型的数据构成的集合,结构体类型就是以struct关键字定义的数据类型。结...
    99+
    2023-06-29
  • C#的程序结构是什么
    本篇内容主要讲解“C#的程序结构是什么”,感兴趣的朋友不妨来看看。本文介绍的方法操作简单快捷,实用性强。下面就让小编来带大家学习“C#的程序结构是什么”吧!C# 程序结构在我们学习 C# 编程语言的基础构件块之前,让我们先看一下 ...
    99+
    2023-06-17
  • C语言中有哪些程序结构
    这篇文章将为大家详细讲解有关C语言中有哪些程序结构,文章内容质量较高,因此小编分享给大家做个参考,希望大家阅读完这篇文章后对相关知识有一定的了解。(1)顺序结构 顺序结构的程序设计是最简单的,只要按照解决问题的顺序写出相应的语句就行,它的执...
    99+
    2023-06-17
  • C语言顺序表的概念及结构是什么
    这篇文章主要介绍“C语言顺序表的概念及结构是什么”的相关知识,小编通过实际案例向大家展示操作过程,操作方法简单快捷,实用性强,希望这篇“C语言顺序表的概念及结构是什么”文章能帮助大家解决问题。1.顺序表的概念及结构顺序表是使用一段连续物理地...
    99+
    2023-06-30
  • c语言switch语法结构是什么
    switch语法结构是一种多分支选择结构,其基本语法结构如下: switch (expression) { case val...
    99+
    2024-04-02
  • C#语言中结构体的作用是什么
    今天就跟大家聊聊有关C#语言中结构体的作用是什么,可能很多人都不太了解,为了让大家更加了解,小编给大家总结了以下内容,希望大家根据这篇文章可以有所收获。C#语言的结构体是一个比较复杂的东西,在此之上有很多需要设置的参数,否则用起来就很容易出...
    99+
    2023-06-17
  • C++的程序流程结构是什么
    这篇文章主要介绍了C++的程序流程结构是什么的相关知识,内容详细易懂,操作简单快捷,具有一定借鉴价值,相信大家阅读完这篇C++的程序流程结构是什么文章都会有所收获,下面我们一起来看看吧。前言C/C++支持最基本的三种程序运行结构:顺序结构、...
    99+
    2023-06-29
  • c语言数据结构是什么
    c语言数据结构是指将数据按照一定的方式组织和存储的方法。它是计算机科学中的重要概念,用来描述和解决实际问题中的数据组织和处理问题。数据结构可以分为线性结构和非线性结构。线性结构包括数组、链表、堆栈和队列等,而非线性结构包括树和图等。C语言是...
    99+
    2023-08-09
  • c语言结构体数组的用法是什么
    在C语言中,结构体数组是一种特殊的数据类型,可以用于存储和操作多个结构体对象。结构体数组由多个相同类型的结构体对象组成,每个对象可以...
    99+
    2023-10-27
    c语言
  • C语言程序中结构体的内存对齐详解
    目录一、为什么存在内存对齐二、结构体的内存对齐四规则三、举例一、为什么存在内存对齐 1.平台原因(移植原因): 不是所有的硬件平台都能访问任意地址上的任意数据的;某些硬件平台只能在某...
    99+
    2022-11-13
    C语言结构体内存对齐 C语言 内存对齐 C语言 结构体
  • C语言结构体是怎么样的
    这篇文章给大家分享的是有关C语言结构体是怎么样的的内容。小编觉得挺实用的,因此分享给大家做个参考,一起跟随小编过来看看吧。结构体结构是一些值的集合,这些值称为成员变量。结构的每个成员是不同类型的变量。为什么要有结构体比如说,描述一个学生时,...
    99+
    2023-06-29
  • C语言数据结构哈希表是什么
    这篇文章将为大家详细讲解有关C语言数据结构哈希表是什么,小编觉得挺实用的,因此分享给大家做个参考,希望大家阅读完这篇文章后可以有所收获。#include <stdio.h>#include <stdli...
    99+
    2023-06-29
  • c语言怎么结束程序
    非常抱歉,由于您没有提供文章标题,我无法为您生成一篇高质量的文章。请您提供文章标题,我将尽快为您生成一篇优质的文章。...
    99+
    2024-05-15
  • C语言数据结构中堆排序的分析总结
    目录一、本章重点 二、堆2.1堆的介绍(三点)2.2向上调整2.3向下调整2.4建堆(两种方式)三、堆排序一、本章重点  堆向上调整向下调整堆排序 二、堆 2.1...
    99+
    2024-04-02
  • C语言数据结构顺序表怎么构造
    本篇内容介绍了“C语言数据结构顺序表怎么构造”的有关知识,在实际案例的操作过程中,不少人都会遇到这样的困境,接下来就让小编带领大家学习一下如何处理这些情况吧!希望大家仔细阅读,能够学有所成!前言在学习链表之前先掌握顺序表什么是顺序表?顺序表...
    99+
    2023-06-30
  • Go语言中结构体的作用是什么
    这篇文章给大家介绍Go语言中结构体的作用是什么,内容非常详细,感兴趣的小伙伴们可以参考借鉴,希望对大家能有所帮助。自定义类型type 自定义类型名 类型名 例: type NewInt&nb...
    99+
    2023-06-15
  • go语言结构体指的是什么
    这篇文章主要介绍“go语言结构体指的是什么”,在日常操作中,相信很多人在go语言结构体指的是什么问题上存在疑惑,小编查阅了各式资料,整理出简单好用的操作方法,希望对大家解答”go语言结构体指的是什么”的疑惑有所帮助!接下来,请跟着小编一起来...
    99+
    2023-07-04
  • go语言的数据结构是什么
    常见的数据结构有基本数据类型、复合数据类型、其他数据结构。详细介绍:1、基本数据类型包括整数类型:int, int8, int16, int32, int64, uint, uint8, uint16, uint32, uint64;浮点数...
    99+
    2023-12-21
    go语言 数据结构
  • 深入了解C语言结构化的程序设计
    目录C语言是结构化的程序设计语言!if语句1:单分支结构2:多分支结构悬空elsewhile循环总结C语言是结构化的程序设计语言! 结构有三大类:顺序结构,选择结构,循环结构! 顺序...
    99+
    2024-04-02
软考高级职称资格查询
编程网,编程工程师的家园,是目前国内优秀的开源技术社区之一,形成了由开源软件库、代码分享、资讯、协作翻译、讨论区和博客等几大频道内容,为IT开发者提供了一个发现、使用、并交流开源技术的平台。
  • 官方手机版

  • 微信公众号

  • 商务合作