《第4章顺序结构培训资料》由会员分享,可在线阅读,更多相关《第4章顺序结构培训资料(28页珍藏版)》请在金锄头文库上搜索。
1、第4章 顺序结构程序设计,l C语言的顺序结构 l 基本顺序结构语句 l 表达式和表达式语句 l 基本输入/输出 l 字符输入函数 l 字符输出函数 l 格式化输入/输出,4.1顺序结构流程概述,4.1.1 程序的顺序结构 顺序结构是其中最基本最简单的结构,构成它的语句有:数据类型语句、表达式语句、赋值语句和函数调用语句等。在顺序结构程序中,语句被按顺序执行,程序结构执行顺序如图3.1所示。,简单顺序结构:,#include main() 变量定义; 语句 1; 语句 2; ; ,4.2 基本顺序结构语句,在C语言程序设计中,基本顺序结构语句是指能够完成指定操作的基本语句,这些语句主要有赋值语
2、句、空语句、复合语句和函数调用语句。,4.2.1表达式和表达式语句,表达式是操作数的运算符的组合体,由运算符连接操作对象构成的式子,它产生一个唯一的值。操作数(又称做操作对象)可以是数值、字符、函数,也可以是另一个表达式,但必须有值能够参加运算。根据表达式结果的数据类型,有数值表达式如数学运算表达式;逻辑表达式如关系运算表达式、逻辑运算表达式、条件运算表达式等等。,表达式可以构成语句,,一个表达式加一个分号(“;”)就构成了表达式语句。它的C语言格式: ; 例如: 1.0/2*(a+b+c); sqrt(s*(s-a)*(s-b)*(s-c); 需要说明的是要注意表达式与表达式语句的区别。例如
3、: a=5,4.2.2 基本顺序语句,在C语言中,对变量赋值使用赋值语句,它是种使用十分普遍的语句。 1.赋值语句 赋值语句是由赋值表达式构成的,是在赋值表达式后加上“;”符号,它的C语言格式: ; 或者 = ;,4.2.2 基本顺序语句,2.空语句 空语句也是一条有效的操作语句,空语句只有一个分号“;”,构成一条空命令语句。它的 C语言格式: ; 空语句本身没有实际功能,表示什么操作都不做。但也经常用在一些特定的场合,比如空循环,跳转目标点等,请看下面的程序代码。,4.2.2 基本顺序语句,3.复合语句 复合语句是用一对大括弧括起来的一组语句,有时侯也称为“程序段”,整体上是一条语句,称为复
4、合语句。在C语言中的格式: 语句1;语句2; 或 语句1; 语句2; ; ,4.2.2 基本顺序语句,4.无条件转向语句 无条件转向语句可以用来控制程序的流程转向,C语言中提供的无条件转向语句是goto语句,程序设计中可以根据需要,在程序中指定标号,作为goto语句的转向入口,可以改变程序的操作顺序。 一般形式: goto 语句标号; 其中语句标号必须是在当前程序中能找到的有效标识。,4.2.2 基本顺序语句,5.函数调用语句 函数调用语句是一次函数调用加上分号“;”构成,在C语言中的一般格式: 函数名称(参数); 函数调用语句完成由函数确定的操作或计算,函数可以是系统库函数,也可以为自定义函
5、数。例如: getchar(); ,4.3输入/输出函数语句,与像Basic、Forth等高级语言不同,C语言不含有输入输出语句,它的输入和输出操作是通过专门的函数来完成。这些函数包含在C语言提供的系统函数库中,使用时引入相应的头文件,然后就可以调用了。 在计算机系统中提供基本输入输出的设备被称做“标准输入/输出设备”,如键盘、显示系统等。C语言提供了一组标准输入/输出函数,这些函数的说明及相关内容包含在stdio.h头文件内。常用的输入/输出函数有:,4.3.1字符输入函数,1.getchar() 函数说明: int getchar(void); 从标准的输入设备,如键盘读入一个字符,最简单
6、的方法是调用函数getchar(),该函数的功能是获取一个键盘的输入字符并返回ASCII码值。,4.3.1字符输入函数,2.getche() 函数说明: int getche(void); getche()函数的功能是从键盘有回显地取一个字符。getche()使用直接视频或BIOS,从键盘读取一个字符,可以将它显示到当前文本窗口。,4.3.1字符输入函数,3.gets() 函数说明: char *gets(char *string); gets()函数的功能是从键盘读入一个以换行符结尾的字符串到s,并用空字符(0)代替s的换行符。gets允许输入串中包含某种空白字符如空格、制表符等。如果调用成
7、功,则返回字符串参数s;如果遇到文件结束或出错,将返回null。,4.3.2字符输出函数,1.putchar() 函数说明: int putchar(int ch); putchar()函数的格式是putchar(c), 功能是将字符c显示在屏幕上。如果putchar()函数调用成功,则返回字符c。,4.3.2字符输出函数,2.puts() 函数说明: int puts(const char *s); 输出字符串s到输出设备。函数执行成功则输出字符串在输出设备,返回最后字符,否则返回EOF。,4.3.3 格式化输入/输出,字符输入/输出函数只能输入或输出字符或字符串,如果要输入/输出其他类型的
8、数据如整数或浮点数,就不能用这些函数。C语言系统函数库提供的printf()和scanf()函数可以根据需要,按规定的数据类型输入数据给变量,或将变量、表达式的内容输出。在printf()和scanf()函数中,数据类型由通过一特定的格式字符串转换,因此这两个函数又称为“格式化”输入/输出函数。,1. printf()格式输出函数 C语言的格式输出函数是printf(),前面用到过这个函数的一部分功能。这里再介绍一下。printf()函数的功能是产生格式化的输出到标准输出。 函数说明: int printf(格式控制串,输出参数表列);,不同的转换字符对应不同的数据类型,常用的转换字符及其含义
9、请参阅表2.1。,2. scanf()格式输入函数 scanf()与printf()函数类似,但scanf()是从标准输入设备(stdio)接收数据,并按指定格式要求转换存入变量。它完成与printf()相反的转换机制,函数说明: int int scanf(格式控制串,地址表列); 函数返回成功输入的项数。,格式控制中可以包含转义字符。常用的转义字符如表4.2所示。,不同的转换字符对应不同的输入,其含义请参阅表4.3。,在%和格式符之间可以插入附加控制字符,如表4.4所示。,4.4 顺序结构程序实例,例4.16 编写计算整数n平方根程序,输入一个整数,输出该数的平方根。 分析:计算平方根可以直接应用C运行库提供的数学函数sqrt()。这里要求从键盘输入数值数据,并且是整数。由于没有限制数据的范围,因此按C语言可用最大范围的整数类型和浮点数类型即long和double。,N-S流程图:,源程序:,#include #include main() long x; double y; printf(n请输入一个整数:); scanf(%ld, ,