否是素数的方法:将n作为被除数,将2到为素数。
n之间的整数作为除数,如果都不能被整除,则
n
另设两个变量:i表示除数,r表示余数。算法表示如下: S1:输入n的值 S2:2→i
S3:n被i除,得到余数r
S4:如果r=0,则输出n“不是素数”,算法结束;否则执行S5 S5:i+1→i
S6:如果i≤n,返回S3;否则输出n“是素数”,算法结束。
三、用传统流程图表示算法
自然语言、流程图和伪代码都可以用来表示算法,其中流程图是算法的图形化表示方法,用图形表示算法直观形象,易于理解。
(一)流程图基本符号
美国标准化协会ANSI规定了一些常用的流程图符号,如图1-7所示,已为世界各国程序工作者普遍采用。
图1-7 流程图基本符号
(二)三种基本结构
计算机科学家们提出了三种基本结构:顺序、选择和循环。任何一个复杂的算法都可以使用这三种结构来描述。
1. 顺序结构,是最简单的一种基本结构。如图1-8所示,先执行A操作,再执行B操作。 2. 选择结构,又称为判断结构或分支结构。如图1-9所示,当p条件成立时执行A操作,当p条件不成立时执行B操作。注意,无论条件p是否成立,A或B两个操作中只能有一个
11
被执行。A或B操作允许为空操作。
3. 循环结构,根据条件重复执行同一操作。如图1-10所示,当条件p成立时,反复执行A操作,直到p条件不成立为止。
图1-8 顺序结构 图1-9 选择结构 图1-10 循环结构
三种基本结构的共同特点: (1)只有一个入口; (2)只有一个出口;
(3)结构内的每一部分都有机会被执行到; (4)结构内不存在“死循环”。
例1.4和1.5两个算法用流程图表示分别如图1-11和图1-12所示。
图1-11 图1-12
本章小结
本章简述了C语言的发展与特点,C语言程序的基本结构及语法基础,介绍了在VC++6.0环境下C语言程序的编辑、编译、连接与运行方法,简要介绍了算法的概念及算法的传统流程图表示方法。
在计算机上运行一个C语言程序,必须经过以下几个步骤:输入与编辑源程序、编译源程序得到目标程序、将目标程序与系统库函数连接得到可执行程序、运行可执行程序得到结果。
12
学习本章内容,应重点掌握构成一个C语言程序的基本结构及在VC 6.0集成环境下程序的编译、连接及运行方法。
习 题
一、选择题
1.C语言是一种( )。
A. 低级语言 B. 汇编语言 C. 高级语言 D. 机器语言 2.以下不是C语言的特点的是( )。
A. 语言简洁紧凑 B. 可以直接对硬件进行操作 C. 数据类型丰富 D. 是面向对象的程序设计语言 3.一个C程序的执行是从( )。 A. 本程序的main函数开始,到main函数结束
B. 本函数的第一个数开始,到本程序文件的最后一个函数结束 C. 本程序的main函数开始,到本程序文件的最后一个函数结束 D. 本函数的第一个数开始,到本程序main函数结束 4.以下叙述正确的是( )。
A. 在C程序中,main函数必须位于程序的最前面 B. C程序的每行只能写一条语句 C. C语言的本身没有输入输出语句
D. 在对一个C程序进行编译的过程中,可以发现注释中的拼写错误 5.以下叙述不正确的是( )。 A. 一个C源程序可由一个或多个函数组成 B. 一个C源程序必须包括一个main函数 C. C程序的基本组成单位是函数
D. 在C程序中,注释说明只能位于一条语句的后面 6.以下叙述中正确的是( )。
A. C程序的基本组成单位是语句 B. C程序中的每一行只能写一条语句 C. C语句必须以分号结束 D. C语言必须在一行内写完 7.下列叙述中正确的是( )。
A. 每个C程序文件中都必须要有一个main函数 B. 在C程序中main()位置是固定的
C. C程序中所有函数之间都可以相互调用,与函数所在位置无关 D. 在C程序的函数中不能定义另一个函数
13
8.C语言源程序的基本单位是( )。
A. 过程 B. 函数 C. 子程序 D. 标识符 9.下列关于算法的特点描述中错误的是( )。
A. 有穷性 B. 确定性 C. 有零个或多个输入 D. 有零个或多个输出 10.用C语言编写的代码程序( )。
A. 可立即执行 B. 是一个源程序 C. 经过编译即可执行 D. 经过编译解释才能执行
二、填空题
1.C语言的源程序必须通过 和连接后,才能被计算机执行。
2.C语言源程序文件的后缀是.c;经过编译后,生成文件的后缀是. obj;经过连接后,生成文件的后缀是 。
3.C语言从源程序的书写到上机运行输出结果要经过编辑、 、连接、执行四个步骤。
4.结构化程序由 、选择结构和循环结构三种基本结构组成。 5.C语言源程序的基本单位是 。
6.一个C语言源程序是由若干函数组成,其中至少应含有一个 。 7.在一个C语言源程序中,注释部分两侧的分界符为 。 8. 是程序设计的灵魂。 9.C语言程序只能从 开始执行。
10.自然语言、流程图和伪代码都可以用来表示算法,其中 是算法的图形化表示方法。
三、编程/思考题
1.简述C语言的主要特点。
2.要得到一个可以正常运行的C语言程序,一般经过哪几个过程? 3.算法具有哪些特点?
4.用流程图表示求解1×2×3×4×5的算法。 5.参照本章例题,编写一个C程序,输出以下信息: ********************************* This is a simple C program!
*********************************
14