模块2c语言输入输出顺序程序设计ppt.ppt
《模块2c语言输入输出顺序程序设计ppt.ppt》由会员分享,可在线阅读,更多相关《模块2c语言输入输出顺序程序设计ppt.ppt(114页珍藏版)》请在三一办公上搜索。
1、中国商业出版社,模块 二输入/输出顺序程序设计,学习目标,数据类型及常量、变量赋值、算术、关系表达式printf和scanf输入输出函数,据格式化输出和输入程序与算法顺序程序设计的一般方法,模块内容,2.1 项目三 数值计算计算三角形周长和面积,2.2 程序与算法描述,2.3 项目四 字符运算密码加工译码器,2.4 项目五 输入输出同学个人信息,2.5 项目六 超市购物结账程序,2.6 语法小节,2.7 工程软件编程规范,2.1 项目三 数值计算计算三角形周长和面积,【项目任务】,从键盘输入三角形三个边a,b,c的值,计算打印它们的周长和面积程序。,【项目目标】,了解程序设计分析方法。掌握变量
2、、运算符、表达式的应用。掌握赋值语句的应用。了解输入、输出的使用。,2.1 项目三 数值计算计算三角形周长和面积,2.1 项目三 数值计算计算三角形周长和面积,【技术要点】,1程序设计思路。先把从键盘输入三个边a,b,c的值存起来,分别按公式计算出周长l和面积s,然后打印输出。要解决这个计算问题,计算机是分步完成任务的,要思考几个问题:(1)数据如何存放?(如何定义存储数据的变量?)(2)数据如何输入?(3)如何按数学公式计算?(4)如何输出结果?,2.1 项目三 数值计算计算三角形周长和面积,【技术要点】,2.变量的定义。定义变量的目的是要计算机在内存中为程序的数据开辟存储空间。定义变量必须
3、明确以下三点:(1)变量名。变量名标明数据在内存中地址,是存储单元的标识符,是变量存取的依据。程序需要多少个变量来存储数据,方便计算机程序处理。(2)变量的类型。变量是用来存储数据的,不同类型的数据在计算机内所占的存储单元数是不同的,范围大小不同。(3)变量的值。定义变量后初始值是不确定的,一般可通过赋值语句或输入语句为其赋值。,2.1 项目三 数值计算计算三角形周长和面积,【技术要点】,3数据计算。本项目实际是一个数学计算问题,给出了数学计算公式,数学公式在程序中有的计算机无法识别,编译无法通过,不能生成执行文件;故数学公式在程序中要求按C语言表达式格式书写,以便计算机正确编译。本项目中周长
4、计算由l=a+b+c赋值语句完成,求面积利用s=sqrt(p*(p-a)*(p-b)*(p-c)赋值语句完成。,2.1 项目三 数值计算计算三角形周长和面积,【技术要点】,4程序在框架内由语句序列分步骤完成。(1)定义变量(2)输入a,b,c的值(3)计算周长l(4)计算p和面积s(5)输出计算结果,项目流程图,2.1 项目三 数值计算计算三角形周长和面积,程序代码,2.1 项目三 数值计算计算三角形周长和面积,#include#includemain()float a,b,c,p,l;double s;printf(please input the a,b,c:n);scanf(%f%f%f
5、,/*打印周长和面积*/,2.1 项目三 数值计算计算三角形周长和面积,【程序说明】,程序的功能是计算三角形周长和面积。第二行#include是C预处理程序的一条包含命令,math.h包含了数学求平方根sqrt()函数,计算平方根时用到,故放在源程序的前面。变量声明float用来定义单精度实型的变量a、b、c、p、l,用double定义变量s为双精度实型,用来存储计算的面积。本项目中周长计算l=a+b+c赋值语句执行过程,先取a、b、c变量值,计算(a+b)+c的和,再赋值给变量l,存入变量l的存储单元之中,面积s的计算过程,先取a、b、c变量值,计算p=(a+b+c)/2,“/”表示除号;计
6、算p*(p-a)*(p-b)*(p-c)表达式的值,由平方根函数计算sqrt(p*(p-a)*(p-b)*(p-c),最后再赋值给变量s,完成计算任务。,程序思考,有同学将“p=(a+b+c)/2;”改为“p=1/2*(a+b+c);”请问程序计算结果正确吗?试一试,分析原因,如何改之。,应用拓展,程序拓展变量赋值。程序功能输入两个数据给变量,交换后输出。程序设计思想,变量实质是存储单元,要交换存储单元的数据内容,就好比有两个分别装满了雪碧和可口可乐饮料的饮料瓶,现想把瓶中的饮料互换一下,互换时不能使饮料混合,我们必须借助相同的容积的空饮料瓶,首先将饮料1倒入过度的空瓶中(t=a),将饮料2倒
7、入饮料1的瓶中(a=b),最后将过度瓶中的饮料倒入饮料2中(b=a),由三步完成交换操作。,应用拓展,变量交换流程图,应用拓展,#include“stdio.h”main()int a,b,t=0;/*定义三个变量为整型*/printf(“input two numbers:”)scanf(“%d%d”,/*输出交换之后变量的值*/运行结果:input two numbers:35 46 a=35,b=46 a=46,b=35,应用拓展,语句行“t=a;a=b;b=t;”中有三条语句,可分三行书写,但次序不能巅倒,如下图2-3所示,每一步执行后变量的结果。,变量赋值过程,拓展思考,讨论比较一下
8、,两变量交换与雪碧饮料瓶和可口可乐饮料瓶中的饮料在交换过程中都借助的存储空间,交换结束后,借助的两存储空间的结果有什么区别?,知识总结,1数据类型 所谓一个数据的“数据类型”,是该数据自身的一种属性,数据要在内存中占用多少个字节。程序中涉及的各种数据(常量、变量),都必须存放在内存里。在语言中,数据类型可分为:基本数据类型,构造数据类型,指针类型,空类型四大类。,知识总结,2.常量在程序执行过程中,其值不发生改变的量称为常量,取值可变的量称为变量。在C语言中,常量又分为普通常量和符号常量,在程序中,常量的类型由常量本身隐含决定的。如求球体积“v=4.0/3.0*PI*r*r*r;”语句中4.0
9、、3.0是普通常量,PI是符号常量。普通常量:有整型常量、实型常量、字符型常量、字符串常量。(1)整型常量:整型常量就是整常数。在语言中,使用的整常数有十进制、八进制和十六进制三种。(2)实型常量实型常量也称为实数或者浮点数。在语言中,实数只采用十进制。它有二种形式:十进制数形式指数形式。十进制数形式:由数码0 9和小数点组成。例如:0.0,.25,5.789,-267.8230指数形式:由十进制数,加阶码标志“e”或“E”以及阶码(只能为整数,可以带符号)组成。其一般形式如:2.1E5(等于2.1*105),3.7E-2(等于3.7*10-2),知识总结,3.符号常量 符号常量是用标识符代表
10、一个常量。在语言中,可以用一个标识符来表示一个常量,称之为符号常量。如用PI代(3.14)是符号常量。符号常量在使用之前必须先定义,其一般形式为:#define 标识符 常量其中#define也是一条预处理命令(预处理命令都以#开头),称为宏定义命令(在后面预处理程序中将进一步介绍),其功能是把该标识符定义为其后的常量值。一经定义,以后在程序中所有出现该标识符的地方均代之以该常量值。符号常量与变量不同,符号常量采用大写字母表示,它的值在其作用域内不能改变,也不能再被赋值。使用符号常量的好处是:含义清楚;能做到“一改全改”。习惯上符号常量的标识符用大写字母,变量标识符用小写字母,以示区别。,知识
11、总结,4.变量在程序执行过程中,其值可以改变的量称为变量。变量使用是要关注三个要素:类型,名字,当前值。(1)变量的类型按基本数据类型来分,变量可为整型变量、实型变量、字符型变量。整型变量可分为以下几类:基本型:类型说明符为int,在内存中占2个字节,其取值为基本整常数。短整量:类型说明符为short int。所占字节和取值范围均与基本型相同。长整型:类型说明符为long int或long,在内存中占4个字节,其取值为长整常数。无符号型:类型说明符为unsigned。无符号型又可与上述三种类型匹配而构成:无符号基本型 类型说明符为unsigned int或unsigned。无符号短整型 类型说
12、明符为unsigned short。无符号长整型 类型说明符为unsigned long。实型变量分为两类:单精度型:其类型说明符为float。在内存中占4个字节,其取值为基本实数。双精度型:其类型说明符为double。在内存中占8个字节,其取值为基本实数。字符型字符型:其类型说明符为char。在内存中占1个字节,其取值为字符常量。,知识总结,(2)变量的定义与赋初值变量定义必须放在变量使用之前。一般放在函数体的开头部分。变量定义的一般形式为:类型说明符变量名1=初始数据,变量名2=初始数据,.;例如:int a,b,t;(a,b,t 为整型变量)float a,b,c=1.0;(a,b,c
13、为实型变量,并给c赋初值1.0。)char ch=A;(ch 为字符型变量,并赋初值A。字符变量用来存储单个字符)变量一经定义后就有一个名字,有类型(在内存中占据一定的存储单元,就会有地址),可以用来装什么类型的数据,当前的值是什么。如图2-6所示。35a变量名变量的值变量的存储单元65480变量的存储单元地址(由计算机编译分配)变量定义时,应注意以下几点:允许在一个类型说明符后,定义多个相同类型的变量。各变量名之间用逗号间隔。类型说明符与变量名之间至少用一个空格间隔。最后一个变量名之后必须以“;”号结尾。变量定义必须放在变量使用之前。一般放在函数体的开头部分。,知识总结,5.C 语言算术表达
14、式与数学公式表达式是由运算符和括号连接起来的式子。表达式是由常量、变量、函数和运算符组合起来的式子。一个表达式有一个值及其类型,它们等于计算表达式所得结果的值和类型。算术表达式是用算术运算符和括号将运算对象(也称操作数)连接起来的、符合 C 语法规则的式子。以下是算术表达式的例子:a+b(a*2)c(x+r)*8-(a+b)7数学公式在程序中正确的转换成C语言算术表达式要注意几点:正确使用算术运算符,加(+)、减(-)、乘(*)、除(/),特别是“*”不能省,平方、立方采用“*”连乘求积,平方根采用函数 sqrt()。如果是分数形式的数学表达式,则一定要将分子、分母分别用一对圆括号括起来,用括
15、号决定运算顺序。如(a+b+c)/2;除法“/”运算还与数据类型有关,当左右两侧为整型,运算结果是整型。当左右两侧为有一个为实型时,运算结果是实型。如13/2结果是6,而不是6.5,而13.0/2、13.0/2.0或13/2.0的运算结果都是6.5。,知识总结,6.赋值运算简单赋值运算符记为“=”。由“=”连接的式子称为赋值表达式。其一般形式为:变量=表达式例如:x=a+b,p=(a+b+c)/2赋值表达式的功能是计算表达式的值再赋予左边的变量。“=”赋值号左边一定为变量。,技能训练,模仿项目示例,定义对应的单精度实型变量,按数学公式写出C语言计算的赋值语句,由输入语句给变量送数据,计算结果由
16、输出语句输出。1从键盘上输入三角形的两边长a、b值其及夹角x,由公式S=absin(x)/2计算三角形面积。2编程输入你穿多少码的鞋子,输出你的脚长多少厘米。公式:y=2x-10(y为鞋码号,x为脚长单位cm)3求ax2+bx+c=0 方程的根,a,b,c由键盘输入,设b2-4ac0。求根公式为:,2.2程序与算法描述,1程序程序是指让计算机完成特定的任务而设计的指令序列,一个程序应包括以下两方面内容:对数据的描述。在程序中要指定数据的类型和数据的组织形式,即数据结构。对数据的处理描述。即操作步骤,也就是算法。算法是为解决一个问题而采取的方法和步骤。著名的计算机科学家Nikiklaus Wir
17、th 提出的公式:程序=数据结构+算法 程序设计就是要在合理地组织数据的基础上,设计好算法。本课程的目的是使同学知道怎样编写一个C 程序,进行编写程序的初步训练,因此,只介绍算法的初步知识。,2.2程序与算法描述,2算法做任何事情都有一定的步骤。为解决一个问题而采取的方法和步骤,就称为算法。计算机算法:计算机能够执行的算法。计算机算法可分为两大类:数值运算算法:求解数值;非数值运算算法:事务管理领域。,2.2程序与算法描述,3算法描述为把解决问题的方法和步骤(即算法)描述出来,按算法的描述编写程序时,思路会更加清晰。可借助于下列工具:(1)自然语言:借助人们日常使用的语言(称为“自然语言”)分
18、步描述;(2)伪代码:伪代码使用介于自然语言和计算机语言之间的文字和符号来描述算法。(3)流程图:借助于传统的流程图表示算法,直观形象,易于理解。画流程框图时常用的一些符号。用箭头表示操作流程。(4)计算机语言:用计算机语言表示算法必须严格遵循所用语言的语法规则。,流程图符号,举例说明,例如:从键盘输入一个数,输出其绝对值。(1)流程图描述算法(2)伪代码描述INPUT xIF X0 THEN XY ELSE XYPRINT Y,(3)计算机C语言描述:#includemain()int x,y;printf(please input the x:n);scanf(%d,2.2程序与算法描述,
19、【技能训练】1用流程图来描述项目三技能训练各题。2用流程图来描述从键盘上输入两个数,将较大的数输出。(要求至少二种方法),2.3 项目四 字符运算密码加工译码器,【项目任务】密码加工程序。从键盘输入小写字母,后移加密,当超出字母范围从头循环,如当后移2位时,输入kyz加工后为mab。,2.3 项目四 字符运算密码加工译码器,【项目目标】了解字符型及存储特点。熟悉getchar()函数。熟悉putchar()函数。掌握算术运算、关系运算表达式。了解三目运算及使用。,2.3 项目四 字符运算密码加工译码器,【技术要点】1、程序设计思路。先把从键盘输入小写字母存入字符变量中,字符型数据存储占一个字节
20、,实际上按ASCII码存储;后移加密,实际上是把字符变量进行加法运算,得到后面的字符;计算处理是根据条件修定字符范围。如果计算出的字符超出a-z范围就要处理了,将字符变量减去a-z的长度26,否则不必处理,保证字符变量的值在a-z之间。结果输出,将加密处理后的字符变量输出。,2.3 项目四 字符运算密码加工译码器,2.3 项目四 字符运算密码加工译码器,【技术要点】2.定义字符变量,本项目设三个字符变量,用char 定义三个ch1、ch2、ch3字符型变量;定义一个加密的偏移值d。3.加密计算采用赋值语句,ch1=ch1+d;4.根据ASCII的范围条件,修定字符范围,采用模除运算处理。,2.
21、3 项目四 字符运算密码加工译码器,【程序代码】#include main()int d=3;/*密码后移量*/char ch1,ch2,ch3;printf(n请输入三个小写字母:);/*scanf(%c%c%c,2.3 项目四 字符运算密码加工译码器,【程序说明】1、语句int d=3;定义整型并赋初值为3,d为密码后移量。2、字符变量赋值。scanf(%c%c%c,是字符输出函数,将字符变量ch1的值输出到屏幕上。也可用 printf(n密码为%c%c%cn,ch1,ch2,ch3)实现输出。,2.3 项目四 字符运算密码加工译码器,【程序思考】有同学将“ch1=ch1+d;ch1=a+
22、(ch1-a)%26;”两语句合并为一条语句“ch1=a+(ch1+d-a)%26;”分析一下,试一试,程序计算结果正确吗?,2.3 项目四 字符运算密码加工译码器,【应用拓展】根据ASCII的范围条件,修定字符范围,采用三目运算处理。,#include main()int d=3;/*密码后移量*/char ch1,ch2,ch3;printf(n请输入三个小写字母:);/*scanf(%c%c%c,三目运算,先把变量ch1的字符的值与z值进行比较,如果大于z条件成立,则执行“?”后的表达式ch1-26,否则执行“:”后的表达式ch1,最后把表达式的值赋给ch1。,【拓展思考】你能将“ch1
23、=ch1+d;ch1=ch1z?ch1-26:ch1;”两值赋语句合并为一条值赋语句吗?合并后,当d=3、ch1=c、ch1=y分析表达式计算顺序。,2.3 项目四 字符运算密码加工译码器,【知识总结】1字符变量的存储形式与运算(1)字符变量的存储字符变量用来存储字符常量,即单个字符。每个字符变量被分配一个字节的内存空间,因此只能存放一个字符。字符值是以 ASCII码的形式存放在变量的内存单元之中的,如a的ASCII码值97,ch1=a;就是把97存入ch1变量中。,2.3 项目四 字符运算密码加工译码器,b的ASCII码值是98,依此类推,z ASCII码是122,大写字母A ASCII码6
24、5,大小写字母的 ASCII码相差 32,数码0 ASCII码48,其他的可查ASCII码表。(2)字符变量参与数值运算。语言允许字符变量参与数值运算,如:ch1=ch1+d,ch1=a+(ch1-a)%26。可以把它们看成是整型量。语言允许对整型变量赋以字符值,也允许对字符变量赋以整型值。在输出时,允许把字符变量按整型量输出,printf(nASCII码为%d n,ch1),也允许把整型量按字符量输出。整型量为二字节量,字符量为单字节量,当整型量按字符型量处理时,只有低八位字节参与处理。,2.3 项目四 字符运算密码加工译码器,2、字符数据的输入输出(1)putchar 函数(字符输出函数)
25、putchar 函数是字符输出函数,其功能是在显示器上输出单个字符。其一般形式为:putchar(ch),ch为一个字符数据(普通字符、转义字符或整数)例如:putchar(A);(输出大写字母 A)putchar(ch1);putchar(n);(换行)(2)getchar 函数(键盘输入函数)getchar 函数的功能是从键盘上输入一个字符。通常把输入的字符赋予一个字符变量,构成赋值语句,如:ch1=getchar();注意:getchar 函数只能接受单个字符,输入数字也按字符处理。输入多于一个字符时,只接收第一个字符。使用本函数前必须包含文件“stdio.h”。,2.3 项目四 字符运
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 模块 语言 输入输出 顺序 程序设计 ppt
链接地址:https://www.31ppt.com/p-5361014.html