《简单程序设计》PPT课件.ppt

上传人:za****8 文档编号:17134384 上传时间:2020-11-10 格式:PPT 页数:31 大小:162.50KB
收藏 版权申诉 举报 下载
《简单程序设计》PPT课件.ppt_第1页
第1页 / 共31页
《简单程序设计》PPT课件.ppt_第2页
第2页 / 共31页
《简单程序设计》PPT课件.ppt_第3页
第3页 / 共31页
资源描述:

《《简单程序设计》PPT课件.ppt》由会员分享,可在线阅读,更多相关《《简单程序设计》PPT课件.ppt(31页珍藏版)》请在装配图网上搜索。

1、3 第 3章 简单程序设计 第 3章 简单程序设计 一、内容提要 3.1 C+的语句(概念、分类、赋值语句) 3.2 C+的输入与输出( I/O流、数据输入输出、格式输 出、 getchar函数、 putchar函数、 scanf函数、 printf函 数) 3.3 顺序结构程序设计(算法概念、算法表示) 二、重点与难点 1、 C+与 C的输入输出方式 2、算法表示 第 3章 简单程序设计 程序的基本组成单位是语句。 3.1 C+的语句 一、语句的基本概念 语句是程序最小的独立单元。语句是表达算法命令或编 译指示的基本语言单位。以分号结束。 C+程序是由各种语句组成。 语法和语义是两个基本点。

2、语法是书写规则。语义是语句的 含义和作用。 二、语句的分类 1、声明语句 int x,y; 在 C+中,对变量 (以及其他对象 )的定义被认为是一 条语句,并且可以出现在函数中的任何行,即可以放在其他 程序语句可以出现的地方,也可以放在函数之外。这样更加 灵活,可以很方便地实现变量的局部化 (变量的作用范围从声 明语句开始到本函数或本块结束 )。 可以声明变量、声明函数、 声明对象。 2、表达式语句 一个表达式加一个分号构成一个语句。最典型的是:由赋值表达式构成一 个赋值语句。 i=i+1 /是一个赋值表达式 i=i+1; /是一个赋值语句 任何一个表达式的最后加一个分号都可以成为一个语句。一

3、个语句必须在最 后出现分号。 C+程序中大多数语句是表达式语句(包括函数调用语句)。 函数调用语句例如 z=max(x,y) 3、控制语句 控制语句,完成一定的控制功能。 C+有 9种控制语句,即 if( )else (条件语句) for( ) (循环语句) while( ) (循环语句) dowhile( ) (循环语句) continue (结束本次循环语句) break (中止执行或循环语句) switch (多分支选择语句) goto (转向语句) return (从函数返回语句) 4、空语句 下面是一个空语句: ; 即只有一个分号的语句,它什么也不做。有时用来做被 转向点,或循环语句

4、中的循环体。 5、复合语句 可以用 把一些语句括起来成为复合语句。如下面是一 个复合语句。 z=x+y; if(z100) z=z-100; cout0) cout0endl; 按语法规定 if后面的 ( )内是一个条件。现在在 x的位置 上换上一个赋值表达式“ a=b”,其作用是:先进行 赋值运算(将 b的值赋给 a),然后判断 a是否大于 0, 如大于 0,执行 cout00) cout0endl; 因为在 if的条件中不能包含赋值语句。 C+把赋值语 句和赋值表达式区别开来,增加了表达式的种类, 能实现其他语言中难以实现的功能。 ( 3)赋值运算符两边类型不一致时,将右边 表达式的值转换

5、成左边变量的类型,然后再赋 值给左边的变量。 3.2 C+的输入与输出 输入和输出并不是 C+语言中的正式组成 成分。 C和 C+本身都没有为输入和输出 提供专门的语句结构。输入输出不是由 C+本身定义的,而是在编译系统提供的 I/O库中定义的。 C+的输出和输入是用“流” (stream)的方 式实现的。图 3.2和图 3.3表示 C+通过流 进行输入输出的过程。 图 3.2 图 3.3 有关流对象 cin、 cout和流运算符的定义等信息是存 放在 C+的输入输出流库中的,因此如果在程序中 使用 cin、 cout和流运算符,就必须使用预处理命令 把头文件 iostream包含到本文件中:

6、 #include 尽管 cin和 cout不是 C+本身提供的语句,但是在不 致混淆的情况下,为了叙述方便,常常把由 cin和 流提取运算符“ ”实现输入的语句称为输入语句 或 cin语句,把由 cout和流插入运算符“ ”实现输 出的语句称为输出语句或 cout语句。根据 C+的语 法,凡是能实现某种操作而且最后以分号结束的都 是语句。 cout语句的一般格式为 cout表达式 1表达式 2变量 1变量 2 变量 n; 在定义流对象时,系统会在内存中开辟一段缓冲区, 用来暂存输入输出流的数据。在执行 cout语句时, 先把插入的数据顺序存放在输出缓冲区中,直到输 出缓冲区满或遇到 cout

7、语句中的 endl(或 n)为止, 此时将缓冲区中已有的数据一起输出,并清空缓冲 区。输出流中的数据在系统默认的设备 (一般为显 示器 )输出。 输入流与输出流的基本操作 一个 cout语句可以分写成若干行。如 coutThis is a simple C+ program.endl; 可以写成 coutThis is /注意行末尾无分号 a C+ program. endl; /语句最后有分号 也可写成多个 cout语句,即 coutThis is ; /语句末尾有分号 cout a C+ ; cout program.; coutendl; 以上 3种情况的输出均为 This is a s

8、imple C+ program. 注意 不能用一个插入运算符“ ”插入多个输出项: couta,b,c; /错误,不能一次插入多项 couta+b+c; /正确,这是一个表达式,作为一项 在用 cout输出时,用户不必通知计算机按何种类型输出,系统 会自动判别输出数据的类型,使输出的数据按相应的类型输出。 如已定义 a为 int型, b为 float型, c为 char型,则 couta b cabcd; 可以写成 cina /注意行末尾无分号 b /这样写可能看起来清晰些 c d; 也可以写成 cina; cinb; cinc; cind; 以上 3种情况均可以从键盘输入: 1 2 3 4

9、 也可以分多行输入数据: 1 2 3 4 在用 cin输入时,系统也会根据变量的类型从 输入流中提取相应长度的字节。如有 char c1,c2; int a; float b; cinc1c2ab; 如果输入 1234 56.78 注意: 34后面应该有空格以便和 56.78分隔 开。也可以按下面格式输入: 1 2 34 56.78 (在 1和 2之间有空格 ) 不能用 cin语句把空格字符和回车换行符作为 字符输入给字符变量,它们将被跳过。如果 想将空格字符或回车换行符 (或任何其他键盘 上的字符 )输入给字符变量,可以用后面将要 介绍的 getchar函数。 在组织输入流数据时,要仔细分析

10、 cin语句中 变量的类型,按照相应的格式输入,否则容 易出错。 上面介绍的是使用 cout和 cin时的默认格式。 但有时人们在输入输出时有一些特殊的要求, 如在输出实数时规定字段宽度,只保留两位 小数,数据向左或向右对齐等。 C+提供了 在输入输出流中使用的控制符 (有的书中称为 操纵符 ),见书中表 3-1。 需要注意的是: 如果使用了控制符,在程序 单位的开头除了要加 iostream头文件外,还 要加 iomanip头文件。 举例: 输出双精度数。 在输入流与输出流中使用控制符 double a=123.456789012345;对 a赋初值 (1) couta;输出: 123.45

11、6 (2) coutsetprecision(9)a;输出: 123.456789 (3) coutsetprecision(6);恢复默认格式 (精度为 6) 下面是整数输出的例子: int b=123456;对 b赋初值 (1) coutb;输出: 123456 (2) couthexb; 输出: 1e240 (3) coutsetw(10)b,b; 输出: 123456, 123456 (5) coutsetfill(*)setw(10)b;输出: * 123456 #include #include using namespace std; int main( ) int a,b; c

12、har c1,c2; cinab;cinc1c2; coutasetw(8)bendl; coutc1=c1endl; coutc2=c2endl; if(!cin) couterror; return 0; C+还保留了 C语言中用于输入和输出单个字 符的函数,使用很方便。其中最常用的有 getchar函数和 putchar函数。 1. putchar函数(字符输出函数) putchar函数的作用是向终端输出一个字符。 例如 putchar(c); 它输出字符变量的值。 用 getchar和 putchar 函数进行字符的输入和输出 例 3.5-1(3.2) 输出单个字符。 #include

13、 /或者包含头文件 stdio.h: #include using namespace std; int main( ) char a,b,c; a=B;b=O;c=Y; putchar(a);putchar(b);putchar(c);putchar( n); putchar(66);putchar(79);putchar(89);putchar(10); return 0; 运行结果为 BOY BOY 可以看到: 用 putchar可以输出转义字符, putchar( n)的 作用是输出一个换行符,使输出的当前位置移到下一行的 开头。 putchar(66)的作用是将 66作为 ASCII

14、码转换为字符输 出, 66是字母 B的 ASCII码,因此 putchar(66)输出字母 B。 其余类似。 putchar(10)中的 10是换行符的 ASCII码, putchar(10)输出一个换行符,作用与 putchar( n) 相同。 也可以输出其他转义字符,如 putchar( 101) (输出字符 A,八进制的 101是 A的 ASCII码) putchar( ) (输出单引号字符 ) putchar( 015) (输出回车,不换行,使输出 的当前位置移到本行开头) 2. getchar函数(字符输入函数) 此函数的作用是从终端(或系统隐含指定的输入设备)输 入一个字符。 ge

15、tchar函数没有参数,其一般形式为 getchar ( )函数的值就是从输入设备得到的字符。 例 3.3 输入单个字符。 #include using namespace std; int main( ) char c; c=getchar( ); putchar(c+32); putchar( n); return 0; 在运行时,如果从键盘输入大写字母 A并按回车键,就会 在屏幕上输出小写字母 a。 请注意, getchar( )只能接收一个字符。 getchar函 数得到的字符可以赋给一个字符变量或整型变量, 也可以不赋给任何变量,作为表达式的一部分。例 如,例 3.3第 5行可以用下

16、面一行代替: putchar( getchar() +32); putchar( n); 因为 getchar( )读入的值为 A, A+32是小写字母 a的 ASCII码,因此 putchar函数输出 a。此时不 必定义变量 c。 也可用 cout输出 getchar函数得到字符的 ASCII的值: coutgetchar( ); 这时输出的是整数 97,因为用 getchar( )读入的实际 上是字符的 ASCII码,现在并未把它赋给一个字符 变量, cout就按整数形式输出。如果改成 cout(c=getchar( ); /设 c已定义为字符变量 则输出为字母 a,因为要求输出字符变量

17、c的值。 可以看到用 putchar和 getchar函数输出和输入 字符十分灵活方便,由于它们是函数所以可以 出现在表达式中,例如 cout(c=getchar( )+32); 在 C语言中是用 printf函数进行输出,用 scanf函数进行输入的。 C+保留了 C语言的 这一用法。在此只作很简单的介绍。 scanf函数一般格式是 scanf(格式控制,输出表列 ) printf函数的一般格式是 printf(格式控制,输出表列 ) 用 scanf和 printf函数进行输入和输出 例 3.4 用 scanf和 printf函数进行输入和输出 。 #include using namesp

18、ace std; int main( ) int a; float b; char c; scanf(%d %c %f, /注意在变量名前要加地址 运算符 return 0; 运行情况如下: 12 A 67.98 (本行为输入,输入的 3个数据间以空格相间 ) a=12,b=67.980003,c=A(本行为输出 ) 输入的整数 12送给整型变量 a,字符 A送给字符变量 c, 67.98送给单精度变量 b。 3.3顺序结构程序设计 3.3.1算法 具体工作步骤。 程序是算法在计算机上的实现。 好算法包括:有穷性、正确性、结构好、 效率高 例 3.7 3.8 3.3.2算法的表示 1、自然语言 2、算法框图 1)流程图 2)结构框图 3.3.4简单程序设计 例 3.10例 3.9

展开阅读全文
温馨提示:
1: 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
2: 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
3.本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
5. 装配图网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
关于我们 - 网站声明 - 网站地图 - 资源地图 - 友情链接 - 网站客服 - 联系我们

copyright@ 2023-2025  zhuangpeitu.com 装配图网版权所有   联系电话:18123376007

备案号:ICP2024067431-1 川公网安备51140202000466号


本站为文档C2C交易模式,即用户上传的文档直接被用户下载,本站只是中间服务平台,本站所有文档下载所得的收益归上传人(含作者)所有。装配图网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。若文档所含内容侵犯了您的版权或隐私,请立即通知装配图网,我们立即给予删除!