首页 理论教育 C语言程序设计:表示算法的方法

C语言程序设计:表示算法的方法

时间:2023-10-26 理论教育 版权反馈
【摘要】:为了表示一个算法,可以有不同的方法。例如:3.用流程图表示算法流程图是人们对解决问题的方法、思路或算法的一种描述方式。图1.15流程图常采用的符号例1.3:判断一个数是奇数还是偶数,用画流程图表示算法。图1.20输出图形3.编写程序,实现效果如图1.21所示。图1.24输出三角形的面积

C语言程序设计:表示算法的方法

为了表示一个算法,可以有不同的方法。常用的方法有:自然语言、伪代码、流程图、计算机语言等。

1.用自然语言表示算法

自然语言就是人们日常使用的语言,可以是汉语、英语或者其他语言。用自然语言表示通俗易懂,但是文字冗长,容易出现歧义。自然语言表示的含义往往不太严格,要根据上下文才能判断其正确的含义。假如有这样一句话:“李先生对张先生说他的孩子考上了大学”。请问是张先生的孩子考上了大学呢?还是李先生的孩子考上了大学?仅从这句话本身难以判断。此外,用自然语言来描述包含分支和循环的算法,非常不方便。

2.用伪代码表示算法

伪代码是指用介于自然语言和计算机语言之间的文字和符号来描述算法。

例如:

3.用流程图表示算法

流程图是人们对解决问题的方法、思路或算法的一种描述方式。

流程图的优点:

➢采用简单规范的符号,画法简单;

➢结构清晰,逻辑性强;

➢便于描述,容易理解。

流程图常采用的符号如图1.15所示。

图1.15 流程图常采用的符号

例1.3:判断一个数是奇数还是偶数,用画流程图表示算法。

输入一个数字x,y=x%2。如果y=0则输出x是偶数,否则输出x不是偶数。将这个程序用流程图表示。

首先需要知道流程图的符号有哪些,要分析在这个问题中有哪些步骤是能用流程图表示的。比如我们把这个问题拆分如下:

表示输入输出的有:

表示要运算的有:

表示判断的有:

然后我们把这些部分根据程序执行步骤用流程线连接起来就形成了流程图,如图1.16和图1.17所示。

图1.16 判断一个数是奇数还是偶数的流程图的上半部分

图1.17 判断一个数是奇数还是偶数的流程图的下半部分

img

本例中的流程图可以不使用“连接点”符号,在这里使用是为了演示连接点符号。

4.用计算机语言表示算法

例1.4:判断一个数是正数还是负数,用计算机语言表示算法

上面这段程序要求用户输入一个数字,如果输入的数大于0,则输出“x为正数”,若输入的数小于0,就直接退出程序。运行结果如图1.18所示。

图1.18 例1.4的运行结果

img

通过本章的学习,我们学到了以下知识:

➢命令、程序、软件的基本概念。

➢了解C语言的发展历程。

➢C语言的特点。

·简洁紧凑、灵活方便

·运算符丰富(www.xing528.com)

·数据结构丰富

·C是结构式语言

·C语法限制不太严格,程序设计自由度

·C语言允许直接访问物理地址,可以直接对硬件进行操作

·C语言程序生成代码质量高,程序执行效率高

·C语言适用范围大,可移植性好

➢使用Microsoft Visual 2010编写第一个C语言程序。

➢C语言编程的步骤:编辑➔预处理➔编译➔连接➔加载➔执行。

➢C语言程序的注释:单行注释、多行注释。

➢每一个C语言程序都必须有一个main函数,main函数作为程序的入口。

➢算法及流程图

·算法的特性:有穷性、确定性、有效性、有零个或多个输入、有一个或多个输出。

·表示算法的方式:自然语言法、伪代码、计算机语言和流程图。

·流程图的优点:采用简单规范的符号,画法简单;结构清晰,逻辑性强;便于

描述,容易理解。

img

1.请阅读以下游戏规则,完成游戏功能界面。游戏规则如下:

➢游戏分为5局,每局您可以猜拳一次,分胜、负、平三种结果。

➢游戏中您可以输入1、2、3分别代表出石头、剪刀、布。

➢石头比剪刀大,剪刀比布大,布比石头大。

➢五局结束后您可以选择再来一次或直接退出游戏。

运行程序,效果如图1.19所示。

图1.19 游戏运行界面

2.编写程序,输出效果如图1.20所示。

图1.20 输出图形

3.编写程序,实现效果如图1.21所示。

图1.21 功能菜单

4.从控制台打印输出一份成绩单,如图1.22所示。

图1.22 输出成绩单

img

1.定义一个变量,存放自己的年龄,并输出自己的年龄,运行效果如图1.23所示。

图1.23 输出变量中的值

2.定义三个变量,分别存放三角形的底边和高,计算三角形的面积,并输出三角形的面积,运行效果如图1.24所示。

图1.24 输出三角形的面积

免责声明:以上内容源自网络,版权归原作者所有,如有侵犯您的原创版权请告知,我们将尽快删除相关内容。

我要反馈