【看课件】PPT 5-2 结构化程序设计 (1).pptx

【看课件】PPT 5-2 结构化程序设计 (1).pptx

  1. 1、本文档共60页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多

;;;问题基本描述

问题:通过定义函数,实现输出5行的数字台阶形状

描述:通过每行输出的数字和个数不同,形成台阶的形状

第一行到第五行:一个1,两个2,三个3,四个4,五个5

所有行都右对齐:每行前面补齐空格

知识技能目标

理解问题逻辑和程序逻辑

理解函数的定义和调用机制

掌握无参数函数的定义和调用;问题的基本逻辑

问题:通过定义函数,实现输出n行的数字台阶形状

实现过程

主函数:通过调用子函数输出n行

子函数:通过循环控制输出n行

子函数:通过参数传递,确定n的值

通过循环:控制输出n行

每行先输出空格:第i行则输出n-i个空格,通过循环控制实现

每行后输出数字:第i行则输出i个i,通过循环控制实现

每行结束:输出一个换行符

整体结构:外循环中嵌套2个内循环;程序的基本逻辑和流程图

子函数的功能:输出n行,无需返回值

定义子函数:输出n行的图形

函数名称和参数:display(intn)

外循环:for(i=1;i=n;i++)

内循环1:输出第i行的空格

内循环2:输出第i行的数字

外循环体最后一条语句:输出换行符

主函数

调用子函数:以输出的行数为实参

函数声明:voiddisplay(int);

在程序的最前面对自定义函数进行声明;;子函数:display

函数类型:void

表示该函数无返回值

函数的最后不需要return语句

函数参数:r,类型为int

表示要输出的行数

函数体:共2条语句

外循环:for(i=1;i=n;i++)

内循环1:for(j=1;j=n-i;j++)

内循环2:for(j=1;j=i;j++)

每行结束:printf(\n);;主函数:main

无须声明变量

调用函数:display(6);

实参:6,表示输出6行

无返回值:单独成一条语句

无须输出语句

在子函数中完成了输出功能

函数声明

语句:voiddisplay(int);

确定:函数名称和参数类型等;难点:一行的输出

每行先输出空格、后输出数字

输出每行的空格

第i行则输出n-i个空格,通过循环控制实现

每行后输出数字

第i行则输出i个i,通过循环控制实现

每行结束:输出一个换行符

printf(\n);;【经典案例】输出所有的“水仙花数”;运行测试1:输出问题要求的5行的数字台阶

运行测试2:修改实参为9,表示输出9行的数字台阶;;改写主函数,子函数不???

voidmain(){

intn;

printf(请输入数字台阶的高度:);

scanf(%d,n);

printf(输出高度为%d的数字台阶\n,n);

display(n);

};改进:输出行数由用户确定;;;函数的分类

系统函数:C语言系统中已经存在的函数

例如:scanf()、printf()、sqrt()

自定义函数:先定义、后使用

用户根据需求进行定义,然后再可以被调用

函数的组成:函数首部和函数体

函数首部

描述了函数外部与函数内部的联系

函数体

组成:由实现函数功能的若干条语句组成

如有返回值:通过return语句实现;无返回值函数的定义

函数类型:void

函数体中可以没有return语句

当函数中所有的语句都执行完,遇到最后的大括号即返回主调函数

函数体中如果有return语句,则其表达式为空

作用:通常以屏幕输出等方式实现需求;函数的返回值由函数功能决定

计算功能的函数一般都有返回值

通过调用函数,返回计算的结果

函数的类型不得为void

输出功能的函数一般不需要返回值

执行指定的具体操作

函数的类型:void

例如:输出数字台阶问题

子函数的功能为:直接输出要求的图形

不需要返回值;无返回值函数的调用

一般不能出现在表达式中

通常以独立的调用语句方式来调用这类函数

例如:调用自定义函数输出数字台阶

display(5);

无参函数和无返回值函数

参数:用于在主调函数和被调函数之间传递数据

主要是主调函数将运算值传递给被调函数

返回值:用于被调函数向主调函数返回值;无返回值函数的调用;;;程序设计语言的发展

历经四代:从低级到高级

第一代语言:机器语言,二进制编码,计算机可以直接识别

第二代语言:汇编语言,引入助记符,需要汇编后运行

第三代语言:高级语言、结构化设计语言

代表语言:C语言、BASIC语言、Pascal语言

数据库语言:SQL

第四代语言:面向对象程序设计语言

代表语言:Java语言、Python语言、Html语言;结构化程序设计

强调程序设计的风格和程序结构的规范化

提倡清晰的结构

基本思路

将一个复杂问题的求解过程划分为若干阶段

每个阶段要处理的问题都容易理解和处理

设计步骤

按自顶向下的方法对问题进行分析

采用模块化设计:先划分好模块,再逐步求精

结构化编码:必须使用指定的编码结构;按自

文档评论(0)

***** + 关注
实名认证
内容提供者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档