第五章
顺序程序设计
本章主要讲了程序和算法,以及两种输出输入函数: 字符输入输出与格式输入输出。
5.1 程序和算法
本小节先讲程序再讲算法,主要涉及到的知识点有:
什么是程序
程序是怎样构成的
了解什么是数据结构
什么是程序设计
以及程序设计包含的几个阶段
什么是算法
算法分类
算法的三种结构
算法的特征
5.1.1 程 序
1.什么是程序?
程序指的是为解决某一个问题或者是实现特定的目标,然 后利用计算机语言编写的命令序列组成的一种集合,我们把这种集合称之为程序。
2.程序是怎样构成的?
程序=数据结构+算法
3.什么是数据结构?
数据结构是对数据进行的一种描述的方法,在程序中利用指定的数据类型或者是数据的组织形式对其描述,把这种方法称之为数据结构。
4.什么程序设计?
程序设计是一种解决特定问题的编程过程,也是一种解决问题较为简便的方法 。
5.程序设计的几个阶段?
分析问题、设计算法、编写程序代码、测试程序(分析运行结果)、编写程序文档
5.1.2 算法
- 算法:为解决某个问题而采取的方法以及步骤
- 算法的分类:数值运算算法和非数值运算算法
(1) 数值运算算法指的是解决一些关于数值解的问题
(2) 非数值运算算法,涉及到的面比较广泛,因此没有指出特定的范围。 - 根据算法控制结构的不同,程序可以分为三种结构:
(1) 顺序结构:一个程序的整体结构
(2) 分支结构:根据特定的某个条件, 选择的一个分支进行执行
(3) 循环结构:程序反复执行的语句,循环结构是程序中的局部结构
4 算法的五个特征:
(1) 有穷性:一个算法必须保持执行有限步骤之后结束
(2) 确切性:算法的每一个步骤必须要有确切的定义
(3) 有输入:一个算法有0个或多个输入
(4) 有输出:一个算法有一个或多个输出
(5) 可行性:算法可精准的运行
5.2 C语言基本语句
本小节主要讲明C语言基本语句的五种类型:赋值语句、函数调用语句、空语句、复合语句、控制语句,使读者在阅读程序时,能够分清这五种语句。
1.c语言程序设计的基本语句可以分为两大类
(1) 控制语句
控制语句的作用:控制程序的执行顺序,使程序的执行流程发生改变。
在c语言中总共有九种控制语句,分别为:
<1>if-else,条件语句
<2>switch-case,多分支选择语句
<3>while,循环语句
<4>do-while,循环语句
<5>for,循环语句
<6>break,终止循环或者是switch结构语句
<7>continue,结束本次循环语句
<8>goto,转向语句
<9>return,返回语句
(2) 操作运算语句
五种操作运算语句:
<1>赋值语句:赋值表达式后跟一个分号,即为赋值语句
<2>函数调用语句:由函数 调用加上一个分号构成的语句
<3>空语句:由一个分号构成的语句,它只是形式上的语句,不产生任何的操作,一般用在控制结构或函数之中
<4>复合语句:用花括号引起来的一组语句称为复合语句
5.3格式输出输入函数
本小节可让读者充分了解printf()和scanf(),可以利用这两个函数写出一些简单的程序。
使用者这两个函数的时候,必须要使用#include<stdio.h>或者是#include”stdio.h”
- scanf()函数
scanf()函数称为格式输入函数,按程序指定的格式用键盘把数据输入指定的变量之中。
scanf()函数是一个标准库函数,其函数原型在头文件“stdio.h”中。
stdio.h 指stdandard input&output
#include<stdio.h>还可以写成#include”stdio.h”.
scanf()函数的一般形式:
scanf(“格式控制字符串”,地址列表);
地址列表中给出个变量 的地址,地址是由地址运算符“&”后跟变量名组成。
格式控制由格式说明和普通字符两部分组成,必须运用双引号括起来。
格式说明:由“%”和格式符组成,格式说明必须以字符“%”开头,作用是将输入的数据按格式符指定的格式赋值给地址列表中对应的变量。
普通字符:在输入时需要原样输入的字符,一般起间隔作用
*符:用以表示该输入项,读入后不赋予相应的变量,即跳过该输入值。
宽度:用十进制整数指定输入的宽度(即字符数)
长度:长度格式符为l或h(l表示输入长整型数据和双精度浮点数,h表示短整型数据)
使用scanf时应注意:
① scanf()函数没有精度的控制
② scanf()要求给出变量地址,如给出变量名则会发生错误。
③ 在输入多个数值数据时,若格式控制串中没有非格式字符作输出数据之间的间隔则可用空格,Tab或回车键做间隔。
scanf()函数常用的格式符
scanf()格式输入函数的使用:
- printf()函数
printf()函数为格式输出函数,它是一个标准库函数,其函数原型在头文件“stdio.h”
中。它可以向终端输出若干个任意类型的数据,其语法格式为:
printf(格式控制,输出列表)
输出列表:需要输出的一组数据(可以为表达式和变量),各参数之间用“,”分隔。
格式控制由格式说明和普通字符两部分组成,必须运用双引号括起来。
格式说明:由“%”和格式符组成,格式说明必须以字符“%”开头,作用是将输出列表中的对应数据按指定的格式输出到屏幕。
普通字符:在输出时原样输出的字符,一般起提示作用。
常用的格式字符
(1) d格式符,输出带符号十进制整数
(2) o格式符,以八进制形式输出整数
(3) x格式符,以十六进制形式输出整数
(4) u格式符,用于输出unsigned型数据,以十进制形式输出。
(5) c格式符,用来输出一个字符,可以指定宽度
(6) s格式符,用来输出一个字符串
(7) f格式符,用小数形式来输出实数
(8) e格式符,以指数形式来输出实数
(9) g格式符,用于输出实数,不输出无意义的0,最多输出6位数字。
printf的使用
5.4字符输入输出
本小节主要讲明getchar()函数和putchar()函数,以及它的使用方法
1.getchar()函数
(1) getchar函数是一个字符输入函数,它是一个无参函数,其语法格式为:
getchar();
(2) getchar函数的功能:接收从键盘输入的单个字符数据。通常把输入的字符赋予一个字符变量,构成赋值语句。
例如:
char ch;
ch=getchar();
(3) getchar前必须包含头文件“stdio.h”
(4) getchar函数只能接收单个字符。
getchar()函数的使用
2.putchar()函数
(1) putchar函数是一个字符输出函数
(2) putchar()函数的语法格式:
putchar(字符表达式);
(3) putchar()函数功能:向标准输出设备输出单个字符数据
putchar()函数的使用