当前位置:文档之家› 程序的顺序结构

程序的顺序结构

程序的顺序结构
程序的顺序结构

程序的顺序结构

一、教学目标

1、知识与技能

理解程序顺序结构的执行流程,掌握赋值语句和输入输出语句,能够编写简单的顺序结构的程序,以解决生活中的一些计算问题。

2、方法与过程

本节从简单的问题入手,如求圆的面积,让学生初步掌握赋值语句和输入输出语句的使用方法及其功能。进而转入较为复杂的问题,如编写程序使从键盘上输入一个三位数,然后反方向输出,并且运用到上一章所学的运算符、表达式等,对知识进行巩固,课程安排形成循序渐进的梯度,充分挖掘学生潜力,让有余力的学生可以有更大空间。

3、情感态度和价值观

程序设计选取的题目与高一所学的数学、物理中学到的新知识有密切的联系,从而激发学生对程序设计的追求和向往。

二、重点难点

1、教学重点

(1)赋值语句和输入输出语句的使用

(2)程序顺序结构的执行流程

(3)能编写程序解决简单的应用题

2、教学难点

根据题目写出正确的程序

三、教学环境

1、教材处理

教材选自《广东省普通高中信息技术选修一:算法与程序设计》第二章第二节,原教材的第一个程序例子有关居民生活消费支出的计算,题目很简单,学生也能理解,但是涉及到的条件较多,写程序时多次使用同样的语句和函数,整个程序看起来长,而且是简单的重复。

所以上课时,把教材的内容作了的简单的处理,以求圆的面积这个程序作为导入,学生更易理解和掌握。而且这个例子也符合一般程序包括数据类型说明、数据输入、数据处理和数据输出四个部分,让刚入门的学生有规可依,进而觉得程序也不是太难学,从易到难进行过渡,提高学生的学习兴趣。

2、预备知识

学生已掌握算法的概念及描述方法,定义常量与变量的方法,程序设计的四个步骤——分析问题、建立模型、设计算法和编写程序。

3、硬件要求

建议本节课在多媒体电脑教室中完成,有广播教学系统或投影仪。

4、所需软件

学生机要安装VB6.0或以上版本。

5、所需课时

2课时(100分钟)

四、教学过程

导入:

演示求圆的面积这道题的程序,让学生明白通过程序可以解决数学中的问题,也给学生展示完整的程序代码,这道程序的功能就是靠这些代码来控制的,引起学生的注意,激发他们的求知欲。

一、演示上述的程序,并把程序代码中的各行代码的作用解释一遍,顺便把程序的执行流程说明一下,编写的程序与设计的算法是一致的。

Private sub command1_click() ‘定义名为command1_click()的事件过程Const pi as single=3.14 ‘说明程序中pi是常量∏

Dim r as single,s as single ‘定义半径r和面积s为单精度实型

r=inputbox(“r=”,”请输入半径”) ‘输入r的值

s=pi*r*r ‘把表达式pi*r *r的值赋给s

print “圆的面积s=”;s ‘把s的值输出到当前的窗体上

End sub ‘过程结束

二、赋值语句

在上述的程序中,r=inputbox(“r=”,”请输入半径”),s=pi*r*r的含义分别是将赋值号右边的函数inputbox(“r=”,”请输入半径”)的值赋给变量r,将赋值号右边的表达式pi*r*r的值赋给变量s。它们的作用都是将表达式的值赋给左边的变量,这种语句称为赋值语句。

赋值语句的基本格式是:

变量=表达式

这里的“=”是赋值符号,它的含义是将表达式的值赋给左边的变量。

观察下列赋值语句的作用:

(1)A=B,它是将变量B的值赋给变量A,但B的值并未改变。

(2)A=123表示将数值123赋给变量A。

(3)A=A+10表示将变量A的值加10后,再赋给变量A。如果原来A的值为30,则执行此语句后,A的值为40。

(4)如果A=30,B=40,则依次执行语句T=A,A=B,B=T后,A、B两个变量的值发生交换A=40,B=30。

三、输入数据的函数

Inputbox()是提供从键盘输入数据的函数,利用它可产生一个对话框,提示用户输入数据并单击命令按钮。该函数返回值是字符类型。利用这个函数,上述程序中的r=inputbox(“r=”,”请输入半径”),所以在程序运行时,从键盘上输入数据赋值给变量r。

<>

>Inputbox()的语法格式为:

Inputbox(提示信息,标题,默认值,位置)

其中:

提示信息:指对输入数据的提示,显示在对话框中,不能省略。

标题:指运行此函数后弹出的对话框的标题。

默认值:指默认的输入数据值。

位置:指运行此函数后弹出的对话框的左上角在屏幕上的位置与提示信息和标题是用引号引起来的字符串。例如:执行下面的程序运行情况:

Private Sub Command1_Click()

A = InputBox("A=", "输入", 12, 100, 20)

End Sub

运行该程序,屏幕上窗口的左上角将位于坐标为(100,20)的位置,标题为“输入”,窗口的提示信息为“A=”,而在输入栏内会出现默认的数据1 2。如下图所示:

四、输出数据的方法

Print是输出数据、文本的一个重要方法。在求圆的面积程序中,print “圆的面积s=”;s 就是利用Print方法将计算出来的圆的面积s的值输出到窗体上。

Print方法输出数据的基本格式是:

Print 输出内容

在这里,输出内容可以是数、变量、表达式,也可以是用引号括起来的字符串。

说明:

(1)如果输出的内容是数、变量、表达式,则输出的是数、变量、表达式的值。如果是引号引起来的字符串,则原样输出。

例如:语句Print 3 的结果为 3

语句Print 2+2 的结果为 4

语句Print “你好”的结果为你好

(2)输出内容可以是一个或多个。如果是多个输出内容,则各输出内容之间可以用逗号或分号分隔;如果用分号,则后面一个输出内容紧跟前一个输出;如果是逗号,则按照分区格式输出。

例如:A=5,B=3

Print “A=”;A,“B=”;B

输出结果为:A=5 B=3

A=5,B=3

Print “A=”;A;“B=”;B

输出结果为:A=5B=3

(3)如果输出内容后面没有符号,则表示下一个Print换行输出;如果Pr int中没有输出内容,则表达输出一个空行。

例如:A=5,B=3

Print “A=”;A

Print “B=”;

B

五、练习

问题1:已知长方体的长、宽、高,编写一个程序,求长方体的全面积和体积。

(1)分析问题

设长方体的长、宽、高分别为A、B、C,由于长方体的六个面的面积两两对应相等,所以长方体的全面积为:S=2*(A*B+A*C+B*C),体积为:V=A*B*C。

(2)设计算法

①输入A、B、C的值

②计算S=2*(A*B+A*C+B*C)

③计算V=A*B*C

④输出S,V的值

(3)编写程序

Private sub command1_click()

Dim A as single,B as single,C as single,S as single,V as single A=Inputbox(“A=”,”输入”)

B=Inputbox(“B=”,”输入”)

C=Inputbox(“C=”,”输入”)

S=2*(A*B+A*C+B*C)

V=A*B*C

Print “全面积S=”;S,“体积V=”;V

(4)调式程序

六、小结

在以上的程序中,执行时按语句出现的顺序执。即当执行第一条语句后,必然从第二条语句继续,顺序执行所有的语句,直到执行完最后一条语句为止。像这样的控制结构称为程序的顺序结构。顺序结构的最大特点是在这个结构内按由

上到下的的书写顺序执行,它只有一个入口和一个出口。这是一种最简单、最基本的结构。如图

五、课外拓展

试编写程序从键盘上输入一个三位数,然后将它反方向输出。例如输入456,输出应为654

1.1.2程序框图与算法的基本逻辑结构

1.1.2 程序框图与算法的基本逻辑结构 教学目标 能够正确说出各种程序框图及流程线的功能与作用 能够画出顺序结构、条件结构、循环结构的流程图 能够设计简单问题的流程图 教学重点 程序框图的画法. 教学难点 程序框图的画法. 课时安排 4课时 教学过程 第1课时程序框图及顺序结构 图形符号名称功能 终端框(起止框)表示一个算法的起始和结束 输入、输出框表示一个算法输入和输出的信息 处理框(执行框)赋值、计算 判断框判断某一条件是否成立,成立时在出口处标明“是”或“Y”;不成立时标明“否”或“N” 流程线连接程序框 连接点连接程序框图的两部分 顺序结构条件结构循环结构应用示例 例1 请用程序框图表示前面讲过的“判断整数n(n>2)是否为质数”的算法. 解:程序框图如下:

变式训练 观察下面的程序框图,指出该算法解决的问题. 解:这是一个累加求和问题,共99项相加,该算法是求100991431321211?++?+?+? 的值. 例2 已知一个三角形三条边的边长分别为a ,b ,c ,利用海伦—秦九韶公式设计一个计算三角形面积的算法,并画出程序框图表示.(已知三角形三边边长分别为a,b,c ,则三角形的面积为S=))()((c p b p a p p ---),其中p=2 c b a ++.这个公式被称为海伦—秦九韶公式) 算法步骤如下: 第一步,输入三角形三条边的边长a,b,c. 第二步,计算p= 2c b a ++. 第三步,计算S= ))()((c p b p a p p ---. 第四步,输出S. 程序框图如下:

点评:很明显,顺序结构是由若干个依次执行的步骤组成的,它是最简单的逻辑结构,它是任何一个算法都离不开的基本结构. 顺序结构可以用程序框图表示为 变式训练 下图所示的是一个算法的流程图,已知a 1=3,输出的 b=7,求a 2的值. 解:根据题意2 21a a +=7, ∵a 1=3,∴a 2=11.即a 2的值为11. 随堂练习 如下给出的是计算 20 1614121++++ 的值的一个流程图,其中判断框内应填入的条件是______________. 语句n+1 语句n

程序框图、顺序结构、循环结构(精)

程序框图、顺序结构、循环结构 1.程序框图 (1程序框图又称流程图,是一种用程序框、流程线及文字说明来表示算法的图形. (2在程序框图中,一个或几个程序框的组合表示算法中的一个步骤;带有方向箭头的流程线将程序框连接起来,表示算法步骤的执行顺序. 2.常见的程序框、流程线及各自表示的功能 图形符号名称功能 终端框(起止框表示一个算法的起始和结束 输入、输出框表示一个算法输入和输出的信息 处理框(执行框赋值、计算

判断框判断某一条件是否成立,成立时在出口处标明“是”或“Y”;不成立时标明“否”或“N” 流程线连接程序框 ○连接点连接程序框图的 两部分 3.条件结构的概念 在一个算法中,经常会遇到一些条件的判断,算法的流程根据条件是否成立有不同的流向.条件结构就是处理这种过程的结构. 名称双条件结构单条件结构 结构 形式 特征两个步骤A、B根据条件是否满足选 择其中一个执行 根据条件是否成立选择是否执行步 骤A

4.循环结构的定义 在一些算法中,经常会出现从某处开始,按照一定的条件反复执行某些步骤的情况,这就是循环结构.反复执行的步骤称为循环体. 名称 双条件结构单条件结构 结构形式 特征 两个步骤 A 、 B 根据条件是否满足选择其中一个执行 根据条件是否成立选择是否执行步 骤A 对条件结构的理解

(1如图1-1-16是算法流程图的一部分,其算法的逻辑结构是( 图1-1-16 A .顺序结构 B .条件结构 C .判断结构 D .以上都不对 (2给出以下四个问题:

①输入一个数x ,输出它的相反数;②求面积为6的正方形的周长;③求三个数 a , b , c 中的最大数;④求函数f (x x -1,x ≥0,x +2,x <0 的函数值. 其中不需要用条件结构来描述其算法的有( A .1个 B .2个 C .3个 D .4个 [再练一题] 1.条件结构不同于顺序结构的特征是含有( A .处理框 B .判断框 C .输入、输出框 D .起止框 简单条件结构的设计

c语言程序分支结构题目及答案

21. htm 01. 从键盘输入一个字符,如果是大写字母,就转换成小写;如果是小写字母,就转换成大写,如果是其他字符原样保持并将结果输出。 #include void main() { char c; scanf("%c",&c); if(c>='A'&&c<='Z') c=c+32; else if(c>='a'&&c<='z') c=c-32; printf("%c",c); } 02. 从键盘输入一个数,判断其是否是5的倍数而不是7的倍数。如果是,输出Yes,否则输出No。 #include void main() { int a; scanf("%d",&a); if(a%5==0&&a%7!=0) printf("yes"); else printf("no"); } 03. 从键盘输入一个4 位正整数,求其逆序数,并输出。例如:若输入1234,则输出应该是4321。 #include void main() { int n,g,s,b,q,m; scanf("%d",&n); q=n/1000; b=n/100%10; s=n/10%10; g=n%10;

m=g*1000+s*100+b*10+q; printf("%d\n",m); } 22. htm 01. 从键盘输入一个字符,如果是字母,就输出其对应的ASCII 码;如果是数字字符,就转换成对应整数并输出。 #include void main() { char c; scanf("%c",&c); if(c>='a'&&c<='z'||c>='A'&&c<='Z') printf("ASCII:%d",c); else if(c>='0'&&c<='9') printf(" 数字:%d",c-'0'); } 02.从键盘输入一个数,判断其是否能同时被3和5整除。如果是,输出Yes,否则 输出No。 #include void main() { int a;

顺序结构的程序(1)

顺序结构的程序(1) 一、赋值语句 PASCAL中有两个语句可以改变变量的值。赋值语句是其中之一(另一个是读语句)。赋值,顾名思义,就是把一个值赋予某个量。可以这样理解:变量相当于装东西的容器,赋值的过程就是把东西放进容器的过程。赋值语句格式如下:变量标识符:=表达式; 书写赋值语句时有以下几点要注意: 1、赋值号只能是“:=”,冒号和等号要连在一起,不能分开。 2、变量要先在程序的说明部分加以说明。 3、表达式必须要有确定的值。 4、一个赋值语句只能给一个变量赋值,同一个变量在程序中可以多次进行赋值。 5、被赋值的变量本身也可在赋值号右侧的表达式中出现,表示先用该变量原来的值代入右侧的表达式进行计算,再将结果重新赋予该变量。 6、赋值号两边的数据类型应相同或相容。 关于数据类型的相同、相容,如下所示: var a;b:integer; c,d,e:real; f:booleam; g:char; begin a:=100; b:=a+5; f:=a>b; g:='L'; //以上是相同数据类型进行赋值 d:=100; c:=b; e:=ord(g); //以上是相容数据类型进行赋值 b:=c; g:='hello'; //以上两个赋值语句都出现溢出,编译时出错 a:=a+10 //表示将变量a的值增加10 end. 二、输入语句(读语句) 输入语句(读语句)和赋值语句一样,能够改变变量的值。与赋值语句不同,输入语句从键盘或文件接收数据赋予变量,而赋值语句则直接由程序语句获得数据。 输入语句的格式如下: read(变量名表); {从键盘读入数据并依次赋值给变量名表中的变量} readln(变量名表); {请看第5条} readln; {请看第6条} 输入语句是编程中用得最多的语句之一。在使用时应注意: 1、写在括号中的变量,都要在变量说明中先预以说明;变量与变量之间,以“,”分隔。 2、从键盘接收数据时,要注意各种不同数据类型数据的分隔符不同。所谓分隔符就是两个完整的数值之间的标记。可以这样理解:当计算机从键盘读入数据时,一旦碰到分隔符,就认为当前的数据读入已完成,可以把它赋给相应的变量了。各种数据类型的分隔符如下:数值型(包括整型、实型)以空格或回车符

Matlab 实验五 分支结构程序设计答案

实验五分支结构程序设计 实验内容 (1)从键盘输入一个数,将它反向输出,例如输入693,输出为396 >> clear >> format long g s=input('s=') n=fix(log10(s)); A=0; for i=1:n a=fix(s/10^n); x=fix(mod(s,10^i)/10.^(i-1)); A=A+x*10^(n+1-i); end A+a s=693 s = 693 ans = 396 (2)输入一个百分制成绩,要求输出成绩等级A,B,C,D,E其中90-100位A,80-89为B,70-79为C,60-69为D,60以下为E 1)分别用if语句和switch语句实现 2)输入百分制成绩后要判断成绩的合理性,对不合理的成绩应输出出错信息 If语句 >> a=input('输入成绩') if a>=90&a<=100 disp('A 成绩合理'); elseif a>=80&a<90 disp('B 成绩合理'); elseif a>=70&a<80 disp('C 成绩合理');

elseif a>=60&a<70 disp('D 成绩合理'); elseif a<60 disp('E 成绩合理'); else disp('成绩错误') end 输入成绩98 a = 98 A 成绩合理 >> a=input('输入成绩') if a>=90&a<=100 disp('A 成绩合理'); elseif a>=80&a<90 disp('B 成绩合理'); elseif a>=70&a<80 disp('C 成绩合理'); elseif a>=60&a<70 disp('D 成绩合理'); elseif a<60 disp('E 成绩合理'); else disp('成绩错误') end 输入成绩148 a = 148 成绩错误 switch语句 >> a=input('输入成绩') switch a; case num2cell(0:59) disp('E 成绩合理'); case num2cell(60:69) disp('D 成绩合理'); case num2cell(70:79) disp('C 成绩合理'); case num2cell(80:89) disp('B 成绩合理'); case num2cell(90:100) disp('A 成绩合理'); otherwise disp('成绩错误'); end

1、1、2、1程序框图及顺序结构学案(已修改)

1、1、 2、1程序框图及顺序结构 一、【学习目标】 1、掌握程序框的画法和功能. 2、了解什么是程序框图,掌握学习程序框图的意义. 3、掌握顺序结构的应用,并能解决与顺序结构有关的程序图的画法. 二、【自学内容和要求及自学过程】 1、阅读教材第6—7页内容,回答问题(程序框图) <1>什么是程序框图? <2>请说出程序框、流程线的符号与功能. 结论:<1>程序框图又称流程图,是一种用程序框、流程线及文字说明来表示算法的图形.在程序框图中,一个或几个程序框的组合表示算法中的一个步骤;带有方向箭头的流程线将程序框连接起来,表示算法步骤的执 行顺序.<2>①椭圆形框:表示程序的开始和结束,称为终端框(起止框),表示开始时只有一个出口,表示结束时只有一个入口.②平行四边形框:表示一个算法的输入和输出信息,又称为输入和 输出框,它有一个入口和出口.③矩形框:表示计算、赋值等 处理操作,又称为处理框(执行框),它有一个入口和出口.④菱形框: 是用来判断给出的条件是否成立,根据判断结果来决定程序的流向,称为判断框,它有一个入口和两个出口.⑤流程线:表示程序的流向.⑥圆圈:连接点.表示相关两框的连接处,圆圈内的数字相同 的含义表示相连接在一起. (具体见教材第6页). 2、阅读教材第7—8页内容,回答问题(顺序结构) 材料:算法的三种基本逻辑结构分别称为顺序结构、条件结构和循环结构,尽管算法千差万别,但都是由这三种基本逻辑结构构成的.如图: <3>上图哪一个是顺序结构、条件结构、逻辑结构? <4>什么是顺序结构? 结论:<3>分别对应图一、二、三.<4>很明显,顺序结构是由若干个依次执行的步骤组成的.这是任何一个算法都离不开的基本结构.

顺序结构程序设计

第三章顺藤摸瓜----顺序结构程序设计 第一节有备而来---程序设计准备 一、学习目标 1.掌握进入BASIC环境的方法和输入、编辑、运行程序的方法。 2.初步掌握BASIC中的基本概念:常量、变量、函数、表达式。 3.初步掌握输出、赋值、输入语句的格式和功能。 4.初步掌握简单顺序结构程序的设计方法。 5.理解程序的顺序结构的概念。 二、教学重点 掌握输出、赋值、输入语句的格式和功能。 三、教学难点 掌握简单顺序结构程序的设计方法。 四、教学方法 1.演示法。 2.实践法。 五、教学手段与教学媒体 六、课时安排 1课时。 七、教学过程 二、学习指导 1.BASIC中的科学记数法类似数学中的科学记数法 例如:-3.14156E+3 ——-3.14156×103 2.56E-2 一2.56×10-2 其中E表示幂底数10,E后跟的整数为幂指数。 2.常见标准函数 ABS(x) 求x的绝对值,即|x| SQR(x) 求x的算术平方根,即。 SIN(x) 求x的正弦值C角x的单位必须是弧度,l°≈3.14159/180)。COS(x) 求x的余弦值(规定同上)。 INT(x) 求不大于x的最大整数。 注意:x为负数时,其值不是去掉小数,例INT(一5.99)≠一5。 INT(X)用处很多: (1)对正数x四舍五入保留N位小数的表达式: INT(X*10^N+0.5)/1O^N 例如:对正数x四舍五入保留两位小数的表达式: INT(X*100+0.5)/100 (2)判断整数A能被整数B整除的条件关系式: INT(A/B)=A/B (3)求整数A除以B的余数的表达式: A—INT(A/B)*B. RND(x) 产生一个O到1之间的随机小数 生成(A,B)内的随机整数的表达式:INT(RND(1)*(B—A)+A) 例如:二位随机整数的表达式: INT(RND(1)*90+10)

算法与程序框图汇总

算法与程序框图 一、程序框图与算法基本逻辑结构: 1.程序框图符号及作用: 程序框图又称流程图,是一种用规定的图形、指向线及文字说明来准确、直观地表示算法的图形. 例:解一元二次方程:2 0(0)ax bx c a ++=≠ 2.画程序框图的规则: 为了使大家彼此之间能够读懂各自画出的框图,必须遵守一些共同的规则,下面对一些常用的规则做一简要介绍. (1)实用标准的框图符号. (2)框图一般按从上到下、从左到右的方向画. (3)一个完整的程序框图必须有终端框,用于表示程序的开始和结束. (4)除判断框外,大多数框图符号只有一个进入点和一个退出点,判断框是具有超过一个退出点的唯一符号,另外,一种判断框是“是”与“不是”两分支的判断,而且有且仅有两个结果;还有一种是多分支判断,有几个不同的结果.

3.算法的三种基本逻辑结构: (1)顺序结构 顺序结构是最简单的算法结构,语句与语句之间, 框与框之间是按从上到下的顺序进行的,它是由 若干个依次执行的处理步骤组成的,它是任何一 个算法离不开的基本结构.如图,只有在执行完步 骤n 后,才能接着执行步骤n+1. 例:.已知梯形的上底、下底和高分别为5、8、9,写出求梯形的面积的算法,画出流程图. 解:算法如下: S1 a ←5; S2 b ←8; S3 h ←9; S4 S ←(a +b )×h /2; S5 输出S . 流程图如下: (2)条件结构 一些简单的算法可以用顺序结构来实现,顺序结构中所表达的逻辑关系是自然串行,线性排列的.但这种结构无法描述逻辑判断,并根据判断结果进行不同的处理的操作,(例如遇到十字路口看信号灯过马路的问题)因此,需要另一种逻辑结构来处理这类问题. 条件结构的结构形式如图,在此结构中含有一个判断框,算法执行到此判断框给定的条件P 时,根据条件P 是否成立,选择不同的执行框(步骤A ,步骤B ),无论条件P 是否成立,只能执行步骤A 或步骤B 之一,不可以两者都执行或都不执行.步骤A 和步骤B 中可以有一个是空的. 例:某铁路客运部门规定甲、乙两地之间旅客托运行李的费用为 0.53,50, 500.53(50)0.85, 50, c ωωωω?≤?=? ?+-?>?其中ω(单位:kg )为行李的重量. 试给出计算费用c (单位:元)的一个算法,并画出流程图. 1S 输入行李的重量ω; 2S 如果50ω≤,那么0.53c ω=?, 否则500.53(50)0.85c ω=?+-?; 3S 输出行李的重量ω和运费c . 步骤n 步骤n+1 ↓ ↓ ↓ 开始结束b h a 5 89 S (+)×/2a b h 输出S 满足条件? 步骤A 步骤B 是否 满足条件? 步骤A 是否

实验一 顺序结构程序设计

实验一顺序结构程序设计 一、实验目的 1. 掌握C语言数据类型,熟悉如何定义一个整型、字符型、实型变量,以及对它们赋值的方法,了解以上类型数据输出时所用的格式转换符。2 2. 学会使用有关算术运算符,以及包含这些运算符的表达式。 3. 掌握数据的输入输出方法,能正确使用各种格式转换符。 二、实验学时数 4学时 三、实验内容和步骤 1..启动TC 2.0编译系统,进入编辑界面,建立一个新文件。文件名自定。(要求每个学生建立一个自己的文件夹,每个同学的练习和作业的源程序命名形成系列,便于检查、查找和考核)。 利用一个小程序验证常量、变量的使用方法与特点,验证数据类型和表达式值的计算规则及其输出格式。 参考程序: main( ) { char c1,c2; c1=97;c2=98; printf(″%c,%c\n″,c1,c2); } (1)在此基础上加入以下printf语句,并运行。 printf(″%d,%d\n″,c1,c2); (2)将第二行改为以下语句,并运行。 int c1,c2; (3)将第三行改为以下语句,并运行。 c1=300;c2=400; 分别写出三次运行结果。 2.编程并调试运行 (1)编程序,用getchar函数读入两个字符给c1、c2,然后分别用putchar函数和printf 函数输出这两个字符。上机运行此程序,比较putchar和printf函数输出字符的特点。 (2)试编写程序,从键盘输入一个大写字母,要求改用小写字母输出。 3.写出下面程序的运行结果: 1)main() { int x=1,y=1,z=1; y=y+x; x=x+y; printf(″%d\n″,x); printf(″%d\n″,y); } 2) main()

5分支结构程序1

5 分支结构程序 (1) 5.1 关系运算符和表达式 (1) 5.1.1 关系运算符及其优先次序 (1) 5.1.2 关系表达式 (1) 5.2 逻辑运算符和表达式 (2) 5.2.1 逻辑运算符极其优先次序 (2) 5.2.2 逻辑运算的值 (3) 5.2.3 逻辑表达式 (3) 5.3 if语句 (4) 5.3.1 if语句的三种形式 (4) 5.3.2 if语句的嵌套 (8) 5.3.3 条件运算符和条件表达式 (9) 5.4 switch语句 (10) 5.5 程序举例 (11) 5分支结构程序 5.1 关系运算符和表达式 在程序中经常需要比较两个量的大小关系,以决定程序下一步的工作。比较两个量的运算符称为关系运算符。 5.1.1关系运算符及其优先次序 在C语言中有以下关系运算符: 1)< 小于 2)<= 小于或等于 3)> 大于 4)>= 大于或等于 5)== 等于 6)!= 不等于 关系运算符都是双目运算符,其结合性均为左结合。关系运算符的优先级低于算术运算符,高于赋值运算符。在六个关系运算符中,<,<=,>,>=的优先级相同,高于==和!=,==和!=的优先级相同。 5.1.2关系表达式 关系表达式的一般形式为: 表达式关系运算符表达式 例如: a+b>c-d

x>3/2 ‘a’+1(b>c) a!=(c==d) 等。 关系表达式的值是真”和“假”,用“1”和“0”表示。 如: 5>0的值为“真”,即为1。 (a=3)>(b=5)由于3>5不成立,故其值为假,即为0。 【例5.1】 main(){ char c='k'; int i=1,j=2,k=3; float x=3e+5,y=0.85; printf("%d,%d\n",’a’+5=k+1); printf("%d,%d\n",1

03实验三 顺序结构程序设计_答案

湖北工业大学实验报告 课程名称:C语言程序设计实验内容实验三顺序结构程序设计 学院:工程技术学院专业班级: 姓名:学号:教师:成绩: 一、实验目的 1、掌握赋值语句、表达式语句、函数调用语句、复合语句、空语句的使用方法。 2、掌握输入、输出函数的格式及格式符的使用。掌握文件包含预处理命令的使用方法。 3、掌握数据的输入、存储、输出之间的关系。 4、掌握顺序程序设计的逻辑结构,掌握数据结构的功能。 二、预习作业 1、程序填空题:试在括号中填入正确的答案,并上机验证程序的正确性。(1) 输入大写字符A,则输出为( )。(文件名:ex3_1.c) (#include ) main( ) { ( char ch,chr; ) chr=(ch= getchar( )) main( ) { ( long int) a =80000 , b = 60000, c, d; ( c) = ( a - b ,a + b ); ( d) = (a + b,a - b); printf(“%ld ,%ld\n”, c, d); }

2、程序改错并上机调试运行 (1)更改下列程序中的位运算符和逻辑运算符,能使变量d、e输出的结果为零。 (文件名:ex3_3.c) #include main( ) { int a = 8, b = 2,c = 3,d,e; /********** found **********/ d = (a % c & ^ a % c); e = a / c - b || && c + + ; printf (“%d, %d\n”, d, e); } (2) 查找改程序中的错误,并修改正确。(文件名:ex3_4.c) #include main( ) { int a = 4, b = 6, c= 3; /********** found **********/ a = a + b = b + c ; b = a < b ?a :b < c ?b :c printf(“%d,%d\n”, a, b); } 3、读程序写结果并上机验证其正确性 (1) 变量 a,b,c,d如下,将变量a以各种格式输出并输出表达式c+a,d – 32的值。(文件名:ex3_5.c) #include main( ) 结果为:(-1,4294967295,37777777777,ffffffff ) { int a = - 1 , b = 2 ; C,B char c = …D?,d = …b?; b = b + c;//??? printf (“%d, %u,%o,%x \n ”,a,a,a,a ); printf (“%c,%c \n ”,c + a, d - 32); } (2) 运行程序后输入”a空格b空格c回车”后,输出结果是(a ,b )。(文件

顺序结构程序设计练习题

C语言练习题总汇 一、单选题: 【顺序结构程序设计】 1.己知int k,m=1;执行语句k=-m++;后k的值是(A )。(提示:负号与自加运算符同级,结合方向从右向左) A)-1 B) 0 C)1 D)2 2.若有定义int x=4;则执行语句x + = x * = x + 1;后,x的值为(C )。A)5 B)20 C)40 D)无答案 3.若有定义:float a=,b=,c=;则表达式1/2*(a+b+c)的值为( C )。 A) B)6 C) D)无答案 4.以下程序段的输出结果是( C )。(提示:a当约束过严时,约束失效。按自由格式输出。) int a=1234; printf("%2d\n",a); A)12 B)34 C)1234 D)提示出错,无结果 5.下列程序段的输出结果是(C)。 int a=1234; float b=; double c=; printf("%2d,%,%",a,b,c); A)无输出 B)12, , C)1234,, D)1234,, 6.设x, y均为整型变量,且x=8, y=5,则以下语句的输出结果是(D)。

printf("%d,%d\n",x--,++y); A)8,5 B)7,5 C) 7,6 D) 8,6 7.以下程序的输出结果是( A )。 int main() { int a=20,b=10; printf("%d,%%d\n",a+b,a-b); } A) 30,%d B)30,10 C)30,%10 D)以上答案均不正确(%%d中第一个%后面的表示字符) 8.下列程序的运行结果是(A)。 int main() { float x=; int y; y=(int)x; printf("x=%f,y=%d",x,y);} A) x=,y=2 B)x=,y=2 C)x=2,y=2 D) x=,y= 9.以下程序的输出结果是(A)。 int main() { char c=‘z’; printf("%c",c-25);} A)a B)z C)z-25 D)y (字母共有26个,而z是最后一个) 10.下面程序的输出结果是(C)。 int main( )

程序的分支结构(一)

程序的分支结构(一) 一、教学目标: 1、知识与技能:掌握分支语句的格式、功能;理解程序的分支结构;了解编程思路 2、过程与方法:学会分析问题和解决问题的能力 3、情感、态度和价值观:培养学生协作学习的能力和团队精神 二、重点难点: 1、教学重点:IF 三、教学媒体:多媒体网络教室 四、教学过程:

新 课 (35分钟)知识点 IF条件语句 格式、功能、流 程图 例:已知数a,b, c,若c为a,b的 和,则输出“rig ht”,否则输出“w rong”,写出语 句。 例:请分析程序 功能。 input x if x<0 then x= -x print x end 新任务 请编写程序计 算运费a。 学生分组讨论 解题步骤。 学生交流思路 由教师归纳学 生所得出基本 讲解 引导思考 纠正答案 提示分析方法 建立数学模型 人工完成步骤 利用已掌握语句细 化实现每个步骤 编写程序 引导学生理顺思 路,归纳步骤并细 化到逐条语句 1、由键盘输入行李 重w 2、判断w值,选择 相应的公式计算运 费a 思考、听讲 理解条件语句 参看课本第16 1 页的内容 思考练习 回答问题 初步运用IF语 句 比较灵活的运 用IF语句 分组讨论 通过讨论完善 自己的思路 学生代表阐述 解题步骤 思考 灵活运用各语 句完成该任务 由计算行李运费的 任务驱动,引入条件 语句。 通过简单例题,使学 生尝试正确的语句 书写格式。 IF <条件> THEN <语句1> [ ELSE <语句2>] IF <条件> THEN <语句1> 再次运用语句,省略 ELSE练习。 加深学生对语句格 式、功能的理解及记 忆。 检测的键盘输入语 句及条件语句的综 合运用情况。 学生交流讨论结果, 及时纠正模糊思路, 得出较为正确方法。 培养学生团结协作

程序框图、顺序结构

1.1.2程序框图与算法的基本逻辑结构 第1课时程序框图、顺序结构 1.掌握程序框图的概念. 2.熟悉各种程序框及流程线的功能和作用. 3.能用程序框图表示顺序结构的算法. 1.程序框图 (1)程序框图又称流程图,是一种用程序框、流程线及文字说明来表示算法的图形. (2)在程序框图中,一个或几个程序框的组合表示算法中的一个步骤;带有方向箭头的流程线将程序框连接起来,表示算法步骤的执行顺序. (3)常见的程序框、流程线及各自表示的功能

(4)算法的逻辑结构 顺序结构、条件结构和循环结构是算法的基本逻辑结构,所有算法都是由这三种基本结构构成的. 2.顺序结构 (1)顺序结构的定义 由若干个依次执行的步骤组成的.这是任何一个算法都离不开的基本结构. (2)结构形式 判断正误.(正确的打“√”,错误的打“×”) (1)有的程序框可以不用流程线连接.() (2)程序框只有一个进入点和一个退出点.() (3)流程线是直线或折线,可以不带箭头.() [提示](1)×各程序框必须用流程线依次连接. (2)×判断框有一个进入点,两个退出点. (3)×流程线必须带箭头. 题型一程序框图的认识和理解

【典例1】下列关于程序框图中图形符号的理解正确的有() ①任何一个流程图必须有起止框; ②输入框只能放在开始框后,输出框只能放在结束框前; ③判断框是唯一的具有超过一个退出点的图形符号; ④对于一个程序框图来说,判断框内的条件是唯一的. A.1个B.2个C.3个D.4个 [思路导引]根据程序框图的概念,逐一验证每个选项是否正确. [解析]①任何一个程序必须有开始和结束,从而流程图必须有起止框,正确.②输入、输出框可以用在算法中任何需要输入、输出的位置,错误.③正确.④判断框内的条件不是唯一的,错误.故选B. [★答案★] B (1)理解程序框图中各框图的功能是解此类题的关键,用程序框图表示算法更直观、清晰、易懂. (2)起止框用“”表示,是任何流程不可少的,表明程序的开始和结束. (3)输入、输出框用“”表示,可用在算法中任何需要输入、输出的位置,需要输入的字母、符号、数据都填在框内. (4)处理框用“”表示,算法中处理数据需要的算式、公式等可以分别写在不同的用以处理数据的处理框内,另外,对变量进行赋值时,也用到处理框. (5)判断框用“”表示,是唯一具有超过一个退出点的图形符号. [针对训练1]下列说法正确的是() A.程序框图中的图形符号可以由个人来确定 B.也可以用来执行计算语句 C.程序框图中可以没有输出框,但必须要有输入框 D.用程序框图表达算法,其优点是算法的基本逻辑结构展现得非常直接 [解析]一个完整的程序框图至少要有起止框和输入、输出框,输入、输出框只能用来输入、输出信息,不能用来执行计算. [★答案★] D

2.2程序的顺序结构

程序的顺序结构 一、教学目标 1、知识与技能 理解程序顺序结构的执行流程,掌握赋值语句和输入输出语句,能够编写简单的顺序结构的程序,以解决生活中的一些计算问题。 2、方法与过程 本节从简单的问题入手,如求圆的面积,让学生初步掌握赋值语句和输入输出语句的使用方法及其功能。进而转入较为复杂的问题,如编写程序使从键盘上输入一个三位数,然后反方向输出,并且运用到上一章所学的运算符、表达式等,对知识进行巩固,课程安排形成循序渐进的梯度,充分挖掘学生潜力,让有余力的学生可以有更大空间。 3、情感态度和价值观 程序设计选取的题目与高一所学的数学、物理中学到的新知识有密切的联系,从而激发学生对程序设计的追求和向往。 二、重点难点 1、教学重点 (1)赋值语句和输入输出语句的使用 (2)程序顺序结构的执行流程 (3)能编写程序解决简单的应用题 2、教学难点 根据题目写出正确的程序

三、教学环境 1、教材处理 教材选自《广东省普通高中信息技术选修一:算法与程序设计》第二章第二节,原教材的第一个程序例子有关居民生活消费支出的计算,题目很简单,学生也能理解,但是涉及到的条件较多,写程序时多次使用同样的语句和函数,整个程序看起来长,而且是简单的重复。 所以上课时,把教材的内容作了的简单的处理,以求圆的面积这个程序作为导入,学生更易理解和掌握。而且这个例子也符合一般程序包括数据类型说明、数据输入、数据处理和数据输出四个部分,让刚入门的学生有规可依,进而觉得程序也不是太难学,从易到难进行过渡,提高学生的学习兴趣。 2、预备知识 学生已掌握算法的概念及描述方法,定义常量与变量的方法,程序设计的四个步骤——分析问题、建立模型、设计算法和编写程序。 3、硬件要求 建议本节课在多媒体电脑教室中完成,有广播教学系统或投影仪。 4、所需软件 学生机要安装VB6.0或以上版本。 5、所需课时 2课时(100分钟) 四、教学过程 导入:

顺序结构的程序设计

顺序结构的程序设计 达县石桥中学冉茂彪 [教学目标] 1、理解程序设计的顺序结构基本思想; 2、掌握顺序结构语句特点; 3、学会用算法分析问题,能够使用顺序结构编写简单的程序解决具体问题。 [教学重点] 理解程序设计的顺序结构思想。 [教学难点] 1、顺序结构实现语句的格式和功能; 2、编写简单程序的过程; 3、变量的特点的理解。 [教学方法] 任务驱动法 [教学环境] 学校计算机多媒体教室 [教材分析] 众所周知,无论多么复杂的程序都可以分解为顺序、选择、循环三种基本结构;因此顺序结构的程序设计的内容的学习效果将直接影响后续章节的程序编写效率。 [教学安排]

一学时 [教学过程] 一、导入: 一直以来编写程序被认为是一项高深莫测的技术,精通这门技术常被冠以“软件工程师”的美名。难道程序设计真的就这么高不可攀吗?今天这节课我们一起走进程序的世界,揭开程序设计的神秘面纱。 二、首先来学习程序设计中所用到的语句: ①输出语句 PRINT 1)格式: PRINT<输出内容> 2)功能: 当输出内容是数时,直接输出该数; 当输出内容是数值表达式时,首先计算表达式的值,然后输出该值; 当输出内容是字符串时,直接输出双引号内的内容。 3)输出格式: 标准格式; 紧凑格式; 句末标点格式。 ②赋值语句LET ③键盘输入语句INPUT ④注释语句REM ⑤结束语句END 三、顺序结构程序设计

任务1:编写程序求底为24,高为5的三解形的面积。 分析:三解形的面积S=ah/2,题中给出a=24、h=5。 算法: ①给变量A、H赋值24、5 ②计算三解形面积S ③输出A、H、S ④结束 程序如下:REM 求三角形的面积 LET A=24 LET H=5 LET S=A*H/2 PRINT A,H,S END 任务2:水果店的苹果2.2元/斤、梨1.5元/斤,顾客买苹果和梨若干斤,总共应付多少钱? 分析:设苹果单价为A,梨单价为B,顾客买苹果和梨的斤数分别为X 和Y,应付款为M,则M=A*X+B*Y 算法: ①给变量A、B赋值2.4、1.5。 ②输入苹果、梨的斤数X、Y。 ③计算应付款M。 ④输出A、B、M。

实验三 分支结构程序设计答案

实验三分支结构程序设计 一、实验目的 1.理解MATLAB的编程方法 2.掌握if语句和switch语句的使用 3. 掌握分支结构程序设计方法 4. 通过练习理解MATLAB编程方法和分支结构程序设计方法。 二、实验环境 1.计算机 2.MATLAB7.0集成环境 三、实验说明 1.熟练操作MATLAB7.0运行环境 2.自主编写程序,必要时参考相关资料 3.实验前应写出程序大致框架或完整的程序代码 5.实验学时:2学时 四、实验内容和步骤 1.实验内容 (1)从键盘输入一个数,将它反向输出,例如输入693,输出为396 >> clear >> format long g s=input('s=') n=fix(log10(s)); A=0;

for i=1:n a=fix(s/10^n); x=fix(mod(s,10^i)/10.^(i-1)); A=A+x*10^(n+1-i); end A+a s=693 s = 693 ans = 396 (2)输入一个百分制成绩,要求输出成绩等级A,B,C,D,E其中90-100位A,80-89为B,70-79为C,60-69为D,60以下为E 1)分别用if语句和switch语句实现 2)输入百分制成绩后要判断成绩的合理性,对不合理的成绩应输出出错信息 If语句 >> a=input('输入成绩') if a>=90&a<=100 disp('A 成绩合理'); elseif a>=80&a<90 disp('B 成绩合理'); elseif a>=70&a<80 disp('C 成绩合理'); elseif a>=60&a<70 disp('D 成绩合理'); elseif a<60 disp('E 成绩合理'); else disp('成绩错误') end 输入成绩56 a = 56 E 成绩合理 switch语句

顺序结构程序设计

(一)教材分析 教育科学出版社《算法与程序设计》(选修1)模块第二章第三节《程序的基本结构》一共三课,本课选用的是第一小节《顺序结构》。众所周知,无论多么复杂的程序都可以分解为顺序、选择、循环这三种基本结构,因此本节内容的学习效果将影响后续章节的程序编写效率。 (二)教学目标 1、知识与技能:理解程序设计的顺序结构基本思想;掌握顺序结构语句特点 2、过程与方法:学会用算法分析问题;能够使用顺序结构编写简单的程序解决具体问题 3、情感态度与价值观:体会用结构化方法解决数学问题的便捷性;明确结构化在程序设计中的重要作用;激励尝试使用多种方法解决问题;培养良好的编程习惯和态度。 (三)教学重点:理解程序设计的顺序结构基本思想 (四)教学难点: 1、顺序结构实现语句的格式和功能 2、编写简单的程序的过程 3、变量的特点 (五)教学方法 任务驱动法、直观演示法、师生互动法、比较教学法 (六)学生分析 课程改革之后,各学校立足于学校实际选开的选修模块各有不同。在没有选修《算法与程序设计》(选修)模块的情况下,对于高一的学生只在必修模块接触过一些关于程序设计的知识,而对于高二学生只有在数学必修模块三中有对算法及程序的描述。因此学生对于程序设计的知识还是相对匮乏

的。因此,在学习设计的过程中,应弱化对于某一编程语言的学习,应更注重学生编程思想的培养。 在让学生实践的环节,我安排了随堂笔记这一形式,让学生随着教学的不断深入,充分发挥自己的思维想象,让学生与教学的进度同步进行,最后能够较好的理解程序的基本结构这一思想,并能较为系统地了解算法分析的一般过程。 (七)教学过程 一、导入 在上课前,我故意引入一般人对程序的看法,设置悬念,引起学生的好奇心,勾起学生探索新鲜事物欲望。为拉近程序与生活的距离,举例说明生活中程序与生活的关系。 二、以任务驱动展开教学 以学生感兴趣的游戏形式展开,一起体验程序设计的过程.。学生从游戏中分析算法,本课设置了三个算法思路让学生分析。 1、顺序结构的第一次亲密接触 依照人的正常逻辑,必有学生想到直接互抛法来交换两个球的方法。引导学生分析算法,引出程序。由于算法1不是满足要求的算法,因此我先引出程序,再分析程序设计的过程。算法1是一个铺垫。这其中也涉及到顺序结构程序的语句描述。 2、顺序结构的第二次亲密接触 这是本课学生必须掌握的程序,因此让学生分析算法的同时,能够模仿算法1编写出算法2的程序。 3、顺序结构的第三次亲密接触

实验5 分支结构程序设计

河北工业大学城市学院《汇编语言程序设计》实验报告 实验5 分支结构程序设计 一、 实验目的 1.熟悉运算类指令对状态标志位的影响,掌握根据状态标志实现转移的方法。 2.掌握条件转移、无条件转移指令的使用方法。 3.掌握利用汇编语言实现单分支、双分支、多分支的程序设计方法;掌握分支程序设计、编写、调试和运行的方法。 二、实验内容 1.判断X 单元数据的奇偶性,若为奇数,将Y 单元设置为0FFH ,若为偶数,将Y 单元清0。 解:程序代码为: DATAS SEGMENT X DB 13H Y DB ? DATAS ENDS CODES SEGMENT ASSUME CS:CODES,DS:DATAS START : MOV AX,DATAS MOV DS,AX MOV BL,Y MOV AL,X TEST AL,01H JZ L1 MOV BL,0FFH JMP L2 L1: XOR BL,BL L2: NOP MOV Y ,BL MOV AH,4CH INT 21H CODES ENDS ENDSTART 部分图解注释为: 2. 设有两个字节数据分别存放在FIRST 和SECOND 单元中,编程求出其中的较小数并存于MIN 单元。 要求:将两个数看作无符号数据和带符号数据时分别编程实现。 将X 单元中的数据给到AX 后,判断出为奇数,则BX 中的值为00FFH

①解:带符号数据时代码程序为: DATAS SEGMENT FIRST DB 5 SECOND DB-6 MIN DB? DATAS ENDS STACKS SEGMENT DW 20H DUP(?)STACKS ENDS CODES SEGMENT ASSUME CS:CODES,DS:DATAS START: MOV AX,DATAS MOV DS,AX MOV AL,FIRST MOV BL,SECOND CMP AL,BL JGE L1 MOV AH,4CH INT 21H L1: MOV MIN,BL CODES ENDS ENDSTART 部分图解注释为: ②解:无符号数据时代码程序为: DATAS SEGMENT FIRST DB 5 SECOND DB 6 MIN DB? DATAS ENDS STACKS SEGMENT DW 20H DUP(?) STACKS ENDS CODES SEGMENT ASSUME CS:CODES,DS:DATAS START: MOV AX,DATAS MOV DS,AX

相关主题
文本预览
相关文档 最新文档