c5-顺序结构程序设计(一).ppt_第1页
c5-顺序结构程序设计(一).ppt_第2页
c5-顺序结构程序设计(一).ppt_第3页
c5-顺序结构程序设计(一).ppt_第4页
c5-顺序结构程序设计(一).ppt_第5页
已阅读5页,还剩30页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

C语言程序设计(第五讲),顺序结构(一),课程回顾,字符串常量存储方式? 字符常量与字符串常量的区别? 字符数据与整型数据的关系? C语言算术运算符有哪些,优先性和结合方向? 不同类型数据如何进行运算? 自增和自减运算有哪几种类型?结合方向? 复合赋值运算符如何使用?注意事项?,教学内容,算法及基本结构的介绍 语句介绍 数据的输入与输出(一),本章重点、难点,重点 算法的表示方法 putchar和getchar 难点 putchar和getchar,算法的介绍,算法及基本结构的介绍 语句介绍 数据的输入与输出(一),算法及基本结构的介绍,利用计算机解决实际问题的过程,提出问题,确定处理 方案,确定操作 步骤,编写程序,输出整理 结果,调试和运行 程序,算法设计,明确问题要求,建立数学模型,算法的概念 解决一个问题要采取的序列就是算法,喝茶水:烧水沏茶喝 解一个二元一次方程,误区:有“计算”的问题才有算法,数值运算算法 非数值运算算法,算法及基本结构的介绍,计算机算法,算法的特性 有穷性:算法的操作步骤是有限的 确定性:算法中每一步都应该是确定的 有效性:算法中的每一个步骤都应当能有效地执行,并得到确定的结果 有零个或多个输入:输入是指在执行算法时需要从外界取得必要的信息。 有一个或多个输出:算法的目的是为了求解,“解” 就是输出。,算法及基本结构的介绍,算法的表示方法 用自然语言表示算法 用流程图表示算法 用N-S流程图表示算法 用伪代码表示算法,算法及基本结构的介绍,用自然语言表示算法 自然语言就是人们日常使用的语言,可以是汉语、英语,或其他语言 用自然语言表示通俗易懂,但文字冗长,容易出现歧义性 用自然语言描述包含分支和循环的算法,不很方便 除了很简单的问题外,一般不用自然语言 例: 张先生说李先生他的孩子考上了大学,算法及基本结构的介绍,用流程图表示算法 流程图是用一些图框来表示各种操作 用图形表示算法,直观形象,易于理解,起止框,输入输出框,判断框,流程线,连接点,注释框,处理框,算法及基本结构的介绍,算法及基本结构的介绍,例如:输入十个数,打印其中的正数。 解题思路:用n来计算数值的个数,从0开始;x当做输入的数值,当x0时输入x的值。,n10,否,x0,否,输入x,n=n+1,是,是,终止,开始,打印x,n=0,优点:直观形象,流程清晰,各种操作一目了然,不易产生歧义; 缺点:流程图占面积大,由于允许使用流程线,使流程任意转移,容易使人弄不清流程的思路。,用N-S结构化流程图表示算法(I),一、顺序结构,A块,B块,A块,B块,(a)传统流程图表示的顺序结构,(b)N-S图表示的顺序结构,算法及基本结构的介绍,用N-S结构化流程图表示算法(II),二、选择结构,A块,B块,A块,B块,(a)传统流程图表示的选择结构,(b)N-S图表示的选择结构,条件P,条件P,满足,不满足,满足,不满足,算法及基本结构的介绍,用N-S结构化流程图表示算法(III),三、循环结构,A块,A块,条件P,当给定条件P满足,满足,不满足,A块,A块,条件P,直到给定条件P满足,不满足,不满足,当型循环结构,直到型循环结构,算法及基本结构的介绍,满足,问题:输入10个数,打印出其中正数,流程图表示方法,N-S表示方法,优点:直观形象,流程清晰,各种操作一目了然,不易产生歧义; 缺点:流程图占面积大,由于允许使用流程线,使流程任意转移,容易使人弄不清流程的思路。,n=n+1,打印x,输入x,n 10,n=0,x0,是,否,算法及基本结构的介绍,N-S图是结构化流程图,它完全去掉了带箭头的流程线,所有的算法都写在一个矩形框内。 优点:作图简单,占面积小,一目了然。,用伪代码表示算法 伪代码是用介于自然语言和计算机语言之间的文字和符号来描述算法 用伪代码写算法并无固定的、严格的语法规则,可以用英文,也可以中英文混用,“输出x的绝对值”的算法 if x is positive thenprint x elseprint -x,若x为正 输出x 否则 输出-x,if x为正 print x else print -x,算法及基本结构的介绍,算法的介绍,算法及基本结构的介绍 语句介绍 数据的输入与输出(一),语句介绍,C语句概述 以“;”作分隔符,编译后产生机器指令. C语句分为五类,控制语句 函数调用语句 表达式语句 空语句 复合语句,控制语句 函数调用语句 表达式语句 空语句 复合语句,完成一定的控制功能 1 if() else 条件语句 2 for() 循环语句 3 while()循环语句 4 do while();循环语句 5 continue 继续语句 6 break 间断语句 7 switch() 开关语句 8 goto 转向语句 9 return 返回语句,有一个函数调用加一个分号 构成一个语句 printf(“This is a Cstatement.”);,有一个表达式加一个分号构成一个语句 例如:a=3;,表示:只有一个分号表示 作用:用来做流程的转向点 用来作为循环语句中的循环体,用一对括起来的语句 z=x+y; t=z/100; printf(“%f”,t); ,语句介绍,赋值语句 赋值语句是由赋值表达式加上一个分号构成 赋值表达式的末尾没有分号,而赋值语句有分号 一个表达式可以包含赋值表达式,但决不能包含赋值语句,语句介绍,If(a=b)0) t=a; If(a=b;)0) t=a;,a=3 a=3;,算法及基本结构的介绍 语句介绍 数据的输入与输出(一),数据的输入与输出(一),数据输入输出的概念 几乎每一个C程序都包含输入输出 输入输出是程序中最基本的操作之一 所谓输入输出是以计算机主机为主体而言的 从计算机向输出设备输出数据称为输出,从输入设备向计算机输入数据称为输入,数据的输入与输出(一),注意的问题 语言本身不提供输入输出语句 输入和输出操作是由C函数库中的函数来实现的 printf、scanf、putchar、getchar、puts、gets不是关键字 在使用系统库函数时,要在程序中使用预编译命令“#include” 如:#include 或者 #include “stdio.h”,数据的输入与输出(一),字符数据的输入与输出 用putchar函数输出一个字符 用getchar函数输入一个字符,数据的输入与输出(一),putchar函数(字符输出函数) 格式:putchar(c) 功能:在标准输出设备上,输出指定字符 说明 一次调用只能输出一个字符 加上分号变为字符输出语句 使用时在程序开头加入编译命令 使用范围 #include /*编译命令*/ putchar(A); (输出大写字母A) putchar(x); (输出字符变量x的值) putchar(101); (也是输出转义字符A),数据的输入与输出(一),C是指字符变量,#include void main ( ) char a,b,c; a=B,b=O,c=Y; putchar(a); putchar(b); putchar(c); putchar (n); ,改为int a=66,b=79,c=89;,运行结果: BOY,数据的输入与输出(一),运行结果: BOY,实例5-1,getchar函数(键盘输入函数) 格式:getchar() 功能:从键盘上输入一个字符 说明 通常把输入的字符赋予一个字符变量构成赋值语句 如: char c; c=getchar();,数据的输入与输出(一),实例5-2 输入单个字符 #include void main() char c; printf(“input a charactern“); c=getchar(); putchar(c); ,数据的输入与输出(一),输入字符: B 运行结果: B,使用getchar函数还应注意几个问题: getchar函数只能接受单个字符,输入数字也按字符处理。输入多于一个字符时,只接收第一个字符。 使用本函数前必须包含文件“stdio.h”。 在TC屏幕下运行含本函数程序时,将退出TC 屏幕进入用户屏幕等待用户输入;输入完毕再返回TC屏幕。 程序最后两行可用下面两行的任意一行代替: putchar(getchar(); printf(“%c”,getchar();,数据的输入与输出,实例5-3 输入单个字符 #include void main() char c; printf(“input a charactern“); putchar(c=getchar

温馨提示

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

评论

0/150

提交评论