c语言中取小数的运算定律,C语言程序设计-循环嵌套.ppt

C语言程序设计-循环嵌套

《C语言程序设计》 Lizq98@xzcat.edu.cn 任务:制作一个数字电子钟 一、任务分析   1、目标:     制作实际生活中常见的显示“时、分、秒”的 “数字电子钟”。如:       10:11:56 任务:制作一个数字电子钟 二、知识回顾 任务:制作一个数字电子钟 任务一:制作一个数字电子钟    在屏幕上显示数字0-59的变化for语句的实现如下:     ……      for(s=0;s<=59;s++)       printf("\%2d",s); …… 第4章 循环结构程序设计 任务:制作一个数字电子钟    存在两个问题:    1、数字“0-59”以滚动卷屏方式显示。    2、显示速度太快,要能以实际一秒时间显示一个数。     任务:制作一个数字电子钟    第一个问题的解决办法,可以使用gotoxy(x,y)函数定位数字显示位置,其中x为屏幕列号、y为屏幕行号。    也可以在每显示一次数字后调用清屏函数clrscr()(或system(“cls”);)。    clrscr()、gotoxy()两个函数都包含在conio.h中,所以要在程序开头使用文件包含命令将它们包含进来:    #include “conio.h" 任务:制作一个数字电子钟 程序如下: #include "Conio.h" int main(void) { int s; for(s=0;s<=59;s++) { gotoxy(35,12);   printf("\n%2d",s);  } getch(); return 0; } 任务:制作一个数字电子钟    第二个问题,是由于计算机的运行速度很快,每秒的显示时间要比实际生活中的一秒时间要短得多。因此,需要在程序中每显示一秒后都设置一个时间延迟,时间延迟用方法空循环结构实现,它的位置在循环内屏幕每显示一个数值后。    for(s=0;s<=59;s++)    {printf("\%2d",s);     for (i=1;i<=200000000;i++); }   这就是一个循环嵌套(二层)结构。 任务:制作一个数字电子钟 程序如下: #include “conio.h" int main(void) { int s; long i; for(s=0;s<=59;s++) { gotoxy(35,12); printf("%2d",s); for (i=1;i<=200000000;i++); } getch(); return 0; } 第4章 循环结构程序设计 任务:制作一个数字电子钟    实训环境:Win-TC或TC    注意:    1)调试程序时要注意观察程序出错情况;     2)200000000是一个参考值,数据改为100000000后再次运行程序,观察运行结果;根据计算机运行速度调整循环变量i的终值,尽量与实际运转时间一致。 任务:制作一个数字电子钟   本节课知识点:  循环嵌套-多种循环 是本课程重点,也是难点。 任务:制作一个数字电子钟    一个循环体内又包含另一个完整的循环结构称为循环嵌套,而包含多层循环的循环结构称为多重循环。while、do while和for三种循环都可以进行嵌套。注意,循环嵌套只能是包含关系,不能发生交叉。 任务:制作一个数字电子钟 五、算法分析    1、变量设置    设小时变量为h、分钟变量为m、秒变量为s,因为这些变量的数据值均为小于60的整数,所以定义它们为整型。    用于延时控制的变量数据值较大,超出整型整形范围,所以变量i定义为长整型。      任务:制作一个数字电子钟 五、算法分析    2、程序结构    “数字电子钟”是一个典型的循环嵌套问题,先考虑只有分、秒的时钟。最里层的循环用于延时,中间层循环控制秒从0~59的变化,外层循环控制分钟从0~59的变化。嵌套结构如下:     for(m=0;m<=59;m++)      for(s=0;s<=59;s++)       { printf("\%2d:%2d", m,s);         for (i=1;i<=200000000;i++);        } 任务:制作一个数字电子钟 五、算法分析    再考虑小时从0-23的变化情形,最外层再套上一个循环,控制小时从0~23。则四层嵌套结构如下:    for (h=0;h<=23;h++)     for(m=0;m<=59;m++)      for(s=0;s<=59;s++)       { prin

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值