文档介绍:第四章顺序程序设计
《C语言程序设计》
课程讲义
2006年4月
从程序流程的角度来看,程序可以分为三种基本结构, 即顺序结构、分支结构、循环结构。这三种基本结构可以组成所有的各种复杂程序。C语言提供了多种语句来实现这些程序结构。本章介绍这些基本语句及其在顺序结构中的应用,使读者对C程序有一个初步的认识, 为后面各章的学习打下基础。
本章概述:
C语句概述
赋值语句
数据输入输出的概念
字符数据的输入输出
格式输入与输出
顺序结构程序设计举例
本章主要内容
C语句概述
C程序的结构:
C语句可分为以下五类:
1、表达式语句
2、函数调用语句
3、控制语句
4、复合语句
5、空语句
C程序的执行部分是由语句组成的
程序的功能也是由执行语句实现的
1、表达式语句:表达式语句由表达式加上分号“;”组成。
其一般形式为: 表达式;
执行表达式语句就是计算表达式的值。例如:
x=y+z; 赋值语句;
y+z; 加法运算语句,但计算结果不能保留,无实际意义;
i++; 自增1语句,i值增1。
提示
C语句概述
执行函数语句就是调用函数体并把实际参数赋予函数定义中
的形式参数,然后执行被调函数体中的语句,求取函数值
2、函数调用语句:
由函数名、实际参数加上分号“;”组成。
其一般形式为: 函数名(实际参数);
C语句概述
3、控制语句:
控制语句用于控制程序的流程,以实现程序的各种结构方式。它们由特定的语句定义符组成。C语言有九种控制语句。可分成以下三类:
条件判断语句:if语句、switch语句;
循环执行语句:do while语句、while语句、for语句;
转向语句:break、goto、continue、return语句。
{ x=y+z;
a=b+c;
printf(“%d%d”,x,a);
}
C语句概述
4、复合语句:
把多个语句用括号{}括起来组成的一个语句称复合语句。
在程序中应把复合语句看成是单条语句,而不是多条语句。
例如:
是一条复合语句。
复合语句内的各条语句都必须以分号“;”结尾,在括号“}”外不能加分号。
本语句的功能:只要从键盘输入的字符不是回车则重新输入。
这里的循环体为空语句。
5、空语句:只有分号“;”组成的语句称为空语句。
空语句是什么也不执行的语句。空语句可用来作空循环体。
while(getchar()!='\n')
;
例如:
其展开之后的一般形式为:
变量=变量=…=表达式;
例如:
a=b=c=d=e=5;
赋值语句
赋值语句是由赋值表达式再加上分号构成的表达式语句。
其一般形式为: 变量=表达式;
赋值语句的功能和特点都与赋值表达式相同。它是程序中使用最多的语句之一。
1、在赋值符“=”右边的表达式也可以又是一个赋值表达式,
因此,可以有其右的表述形式变量=(变量=表达式);
按照赋值运算符的右接合性,因此实际上等效于:
e=5; d=e; c=d; b=c; a=b;
赋值语句
如下述说明是错误的:int a=b=c=5
2、注意在变量说明中给变量赋初值和赋值语句的区别。
3、在变量说明中,不允许连续给多个变量赋初值。
给变量赋初值是变量说明的一部分,赋初值后的变量与其后的其它同类变量之间仍必须用逗号间隔,而赋值语句则必须用分号结尾。
例如: int a=5,b,c;
必须写为:
int a=5,b=5,c=5;
而赋值语句允许连续赋值。
4、注意赋值表达式和赋值语句的区别。
讨论
下述语句哪个是合法的?
if((x=y+5)>0) z=x;
if((x=y+5;)>0) z=x;
合法的:语句的功能是,若表达式x=y+5大于0则z=x
非法的:因为x=y+5;是语句,不能出现在表达式中
数据输入输出的概念
因此源文件开头应有以下预编译命令:
#include< >
或
#include ””
stdio是standard input &outupt的意思。
在C语言中,所有的数据输入/输出都是由库函数完成的。因此都是函数语句。
在使用C语言库函数时,要用预编译命令
#include
其作用是:将有关“头文件”包括到源文件中。
使用标准输入输出库函数时要用到: “”文件
考虑到printf和scanf函数使用频繁,系统允许在使用这两个函数时可不加#include< > 或
#include ””