汇编语言 王爽,使用二重循环,在屏幕输出下述图形: * *** *****

内有流程图,设计思路,总结,7道题完整的汇编报告
扫扫二维码,随身浏览文档
手机或平板扫扫即可继续访问
汇编语言程序设计报告
举报该文档为侵权文档。
举报该文档含有违规或不良信息。
反馈该文档无法正常浏览。
举报该文档为重复文档。
推荐理由:
将文档分享至:
分享完整地址
文档地址:
粘贴到BBS或博客
flash地址:
支持嵌入FLASH地址的网站使用
html代码:
&embed src='/DocinViewer-4.swf' width='100%' height='600' type=application/x-shockwave-flash ALLOWFULLSCREEN='true' ALLOWSCRIPTACCESS='always'&&/embed&
450px*300px480px*400px650px*490px
支持嵌入HTML代码的网站使用
您的内容已经提交成功
您所提交的内容需要审核后才能发布,请您等待!
3秒自动关闭窗口汇编语言画菱形z_百度文库
两大类热门资源免费畅读
续费一年阅读会员,立省24元!
评价文档:
9页1下载券1页2下载券1页1下载券6页免费2页免费6页免费1页5下载券2页1下载券2页1下载券23页1下载券
汇编语言画菱形z|汇​编​语​言​课​程​设​计
把文档贴到Blog、BBS或个人站等:
普通尺寸(450*500pix)
较大尺寸(630*500pix)
你可能喜欢C语言程序设计第7讲(2010级)_百度文库
两大类热门资源免费畅读
续费一年阅读会员,立省24元!
文档贡献者贡献于
评价文档:
76页免费42页免费65页免费80页免费32页免费 34页免费33页免费22页免费52页免费81页免费
喜欢此文档的还喜欢32页免费92页免费62页免费7页免费79页5下载券
C语言程序设计第7讲(2010级)|C​语​言​P​P​T
把文档贴到Blog、BBS或个人站等:
普通尺寸(450*500pix)
较大尺寸(630*500pix)
大小:469.50KB
登录百度文库,专享文档复制特权,财富值每天免费拿!
你可能喜欢论文发表、论文指导
周一至周五
9:00&22:00
渐进启发式方法在C语言循环结构教学中的运用
&&&&&&本期共收录文章20篇
  1、引言 中国论文网 /8/view-2310728.htm  如何激发学生学习循环结构的兴趣,如何引导其设计出合理的循环结构,是我们在C语言循环结构的教学中急需研究和探讨的问题。在分析了以往教学方法弊端以及人们认识事物的规律的基础上,我们试图提出一种在C语言循环结构中的渐进启发式教学方法。   2、循环结构和渐进启发式方法   根据学生的前期知识背景,按照人们认识事物的规律,渐进地,由易到难地,一步一步地启发学生在C语言程序设计中什么是循环结构(what),为什么要学习循环结构(why),如何设计循环结构(How)。本文就是在渐进启发式教学方法的指导下将其中的2W+H三个问题一一解剖,借此引起学生对循环结构重视的同时,激发其学习循环结构的兴趣。   3、C语言循环结构教学步骤   3.1什么是循环结构(What)    “循环”顾名思义就是“事情的重复”,其具体到程序中就是某一段代码(一条或多条语句)在满足某种条件下的不断重复执行,但是大多数的循环都不是简单的重复,而是有规律的重复,并从本质上讲都是量变到质变的过程。可以举例比喻:“从这学期开始1-16周,周二的3,4节,我们都要上“C语言程序设计”的课程。”显然这不是简单地重复上课,是通过每一次教授不同的知识点和不同的程序设计方法,最后达到大家掌握C语言程序设计的质变过程。   3.2为什么要用循环结构(Why)   首先,让学生先通过前期的知识,设计程序求解下述的累乘问题(也可以换成累加等)。首先计算1×2×3×4×5。很显然不用循环结构的情况下,可以用顺序结构的5条语句来解决:   s=1;s=s*2;s=s*3; s=s*4; s=s*5;   程序结构简单,语句数量可以接受。紧接着,很自然的,你可以让学生利用同样的方法去计算1×2×...×100,甚至是1×2...×, 如果还是只采用顺序结构,结构虽然简单,但是语句的数量已经达到了一个无法忍受的地步。随着累加个数的增加,语句也随着线性增多。代码量太大,重复劳动太多。尽管解决效果很差,但这还是一个不用循环结构就是可以解决的问题。最后,如果式子变为1×2×...×n,而n是一个变量,是一个不定数,就会发现如果不用循环结构,就已经无法解决了。很自然地,学生就会迫切地想知道利用循环结构如何解决,解决的效果如何,极大地引起了其对循环结构的重视,激发其学习兴趣。    类似地,为了更为直观,我们在教学过程中,通过同样的渐进启发式方法引导解决下列问题需要用到循环结构的原因。   首先让学生在不用循环结构的情况设计程序输出下列图形:    *   ***    *****   学生可能给出的参考答案:   printf("");printf("*"); printf("\n");   printf(" "); printf("***"); printf("\n");   printf("*****"); printf("\n");   然后抛出第二个问题,启发学生如果符合该规律的图形不只3行,而是10行,甚至是更多,还是不用循环去解决,可以解决吗?解决效果如何?你从中有没有发现什么规律?   正当学生埋头苦写代码时,你再抛出第三个启发式的问题:如果现在符合这种规律的图形不是10行,也不是100行,而是一个不定数,是一个变量,可以根据用户的需求随时改变行数的图形,不用循环还能解决吗?   3.3如何设计循环结构(How)   引起了学生对循环的重视和激起其学习循环的兴趣之后,我们带着学生的疑惑一步一步地引导学生设计循环结构去解决上述问题。C语言的循环主要有三种结构(for, while ,dowhile)。各自有不同的适用范围,通过一定的变动可以相互转换。我们先可以选择其中一种结构实现,然后在巩固循环结构的时候可以换成其它两种方法。   对于引例1,学生在用顺序结构计算1×2×3×4×5时,很容易发现其中有四个相乘是重复操作,但是通过怎样有规律地累乘才能得到结果呢,这个需要我们一步一步渐进地去启发。   首先我们将上面的代码,即   s=1;s=s*2;s=s*3;s=s*4;s=s*5;   进行稍微的修改:   int s=1;s=s*1;s=s*2;s=s*3;s=s*4;s=s*5;   这时,再启发学生在第二行到第六行代码中除了乘法是重复的,还有什么是重复的?学生很容易就发现,被乘数s也是重复的,而乘数在有规律的变化(依次增加1)。通过引入变量来表达该有规律的变化,代码再次改写为:   int s=1, i=1;   s=s*i; i++;   s=s*i; i++;   s=s*i; i++;   s=s*i; i++;   s=s*i; i++;   至此,学生就很容易发现,第二行到地第六行的代码完全一样,是重复操作。循环体明朗化。即 s=s*i; i++;。然后设计循环条件和选择循环变量。利用循环结构中的最阶段的while形式,代码变成:   int s=1, i=1;   while(i<=5)   {s=s*i; i++;}   至此代码被大大简化,还可以进一步启发学生,不论累乘的个数有多少(结果在类型所能支持的最大数范围内),只要修改while循环中的条件,无需增加或修改循环体,均可以解决,随着累乘个数的增加出现代码行数线性增多的问题。同时,只要再增加一个变量,就可以解决利用顺序结构无法解决的累乘个数不定的累乘问题。即:   int s=1, i=1,n;   scanf("%d",&n);   while(i<=n)   {s=s*i; i++;}   至此,学生清晰地认识到在引入了循环结构后,我们可以非常方便地解决了原来解决起来非常麻烦的,甚至是原来无法解决的问题。另外,通过详细地讲解该引例的循环设计过程,还可以进一步启发学生,用循环结构去解决s=1+2+...+100, s=12+22+32+...+1002 s=1+21+23+...+2100等更为复杂而又具有一定规律的数学问题。   通过渐进启发式方法,我们引导了学生如何去设计简单的具有一重循环的例子,并进行了进一步的引申。在该一重循环的设计过程的引导基础上,我们还进一步通过渐进启发式方法来引导学生通过二重循环来完成我们的引例2.   对于引例2,输出图形:    *   ***    *****   我们最初给出的顺序结构的代码是:   printf("");printf("*"); printf("\n");   printf(" "); printf("***"); printf("\n");   printf("*****"); printf("\n");   这样的代码不利于发现重复操作,我们稍微做修改:   printf(" ");printf(" ");printf("*"); printf("\n");//输出第一行   printf(" ");printf("*");printf("*"); printf("*"); printf("\n");//第二行   printf("*"); printf("*");printf("*");printf("*");printf("*");printf("\n");//第三行修改之后,本着先整体后局部的观念,让学生先忽略细节,从整体上来说,我们要“重复”输出三行,通过前期的知识,很容易引入一个变量表示行数,并将其作为循环控制变量。因此很容易写出程序的大致框架:   int i;   for(i=1;i<=3;i++)   {    重复输出三行;   }   而具体到每一行,如何输出,就需要引导学生观察每一行的输出情况,经过观察不难发现,每一行都是在先输出一定个数的空格之后,再输出一定个数的“*”,最后输出换行。因此程序的进一步细化为:   int i;   for(i=1;i<=3;i++)   {    先重复输出一定个数的空格;// 存在循环-->寻找循环次数-->确定空格个数    再重复输出一定个数的“*”; // 存在循环-->寻找循环次数-->确定“*”个数    最后输出换行符;   }   而具体每一行在输出多少个空格之后再输出多少个“*”,我们可以通过列表的方式来寻找每一行输出的空格个数和“*”的个数与其所在的行数有何关系。   假设我们用n来代表行数。   通过列表,我们会发现空格个数j=n-i;(n=3), 而“*”的个数k=2*i-1。为了进一步证实该关系的成立,我们还可以增加行数来加以验证。有了上述关系之后,我们输出该图形的代码就完整了。    int i, j,k;   for(i=1;i<=3;i++)   {    for(j=1;j<=3-i;j++)    printf(" ");    for(k=1;k<=2*i-1;k++)   printf("*");   printf("\n");   }   在实现输出该图形的基础上,我们引入行的变量n,并将上述代码中代表行数的3更换成n,就可以输出任意指定行数的符合该规律的图形。因此也就解决了我们在3.2中所提出的问题。在很多情况下,用了循环结构可以很好地解决原来解决起来非常麻烦,甚至是无法解决的问题。   4、结束语   循环结构是C语言程序设计中最重要的组成部分之一,也是教学中的重点和难点之一,为了更好地引起学生对循环结构的重视,激发其学习循环结构的兴趣,本文通过详细讲解两个经典例子的循环设计过程,将渐进启发式的方法运用到循环结构的教学当中去,从实际的教学反馈结果来看,该方法引起了学生对循环结构的足够重视,激起了其学习兴趣,取得了良好的教学效果。■
转载请注明来源。原文地址:
【xzbu】郑重声明:本网站资源、信息来源于网络,完全免费共享,仅供学习和研究使用,版权和著作权归原作者所有,如有不愿意被转载的情况,请通知我们删除已转载的信息。
xzbu发布此信息目的在于传播更多信息,与本网站立场无关。xzbu不保证该信息(包括但不限于文字、数据及图表)准确性、真实性、完整性等。}

我要回帖

更多关于 汇编语言 王爽 的文章

更多推荐

版权声明:文章内容来源于网络,版权归原作者所有,如有侵权请点击这里与我们联系,我们将及时删除。

点击添加站长微信