《XML》教案 第1章 学习XML基础

《XML》教案

第1章 学习XML基础

主讲人:×××

回顾上一章: [10分钟] 2

课程知识点讲解: 2

while 循环和do...while 循环的区别:[15分钟] 3

for 循环的使用 :[5分钟] 4

嵌套 for 循环 :[20分钟] 5

本章总结 [10分钟] 6

考核点 6

测试题 6

扩展部分: 7

学员问题汇总: 7

作业: 7

本章主要的目的

识别XML作为一种标准数据交换格式的需求

识别XML文档的结构

本章重点

条件结构

本章难点

循环结构

回顾上一章:

课程知识点讲解:

变量操作符:

算术操作符

算术赋值操作符

一元操作符

比较运算符

逻辑运算符

条件结构: [15分钟]

if.... else 结构

switch....case结构

if.... else 结构

案例讲解:

/* 范例名称:使用while循环将2相加1000次的示例

  • 源文件名称:while语句.cpp
  • 要 点:语句可以是空语句、一个简单的语句或语句块
  1. 如果while循环中包含一组语句,必须用{}括起来

  2. 只要条件为真循环就会迭代

    */

    例题内容:{

    int sum = 0, times = 1;

    while(times<=1000)

    {

    sum = sum+2;

    times = times+1;

    }

    printf("Sum = %d \n",sum);

    }

    老师提问:

    问题1:while和for的区别?

    问题2:若条件测试没有为false时,程序将如何运行?

    do...while循环: [15分钟]

    格式:do{

    语句;

    }while(条件)

    与for和while循环不同的是,该循环在循环的末尾才会检查条件,就是说即使条件已开始就是false,这个循环至少会执行一次

    do语句的循环至少执行一次

    知识点讲解1

    案例讲解

    /* 范例名称:的示例

  • 源文件名称:do...while.cpp
    • * 要 点:在条件测试执行前执行一次条件变为 False 时,do while 循环终止;
    •1. 控制权传递给紧跟在 while 语句之后的语句
    */
    例题内容: int sum = 0,times = 1;
    do
    {
    sum = sum+2;
    times = times+1;
    }while(times<=1000);
    printf("Sum = %d \n",sum);

while 循环和do...while 循环的区别:[15分钟]

while语句是当型循环控制语句,一般形式为:

while <表达式> 语句;

语句部分称为循环体,当需要执行多条语句时,应使用复合语句。

while语句的流程图见图3 - 8,其特点是先判断,后执行,若条件不成立,有可能一次也不执行。

do . . . while是直到型循环的语句,它的一般形式为:

do 语句while <表达式>

其中语句通常为复合语句,称为循环体。

其基本特点是:先执行后判断,因此,循环体至少被执行一次。

但需要注意的是,do. . .while与标准的直到型循环有一个极为重要的区别,直到型循环是当条件为真时结束循环,而do. . .while语句恰恰相反,当条件为真时循环,一旦条件为假,立即结束循环,请注意do. . .while语句的这一特点。

知识点讲解1

案例讲解:

老师提问:

问题1:输入1,SUM值为多少,输入11,SUM值为多少?

for 循环的使用 :[5分钟]

for语句是循环控制结构中使用最广泛的一种循环控制语句,特别适合已知循环次数的情况。它的一般形式为:

for (<表达式1 >;<表达式2 >;<表达式3>) 语句

for语句很好地体现了正确表达循环结构应注意的三个问题:

  1. 控制变量的初始化。

  2. 循环的条件。

  3. 循环控制变量的更新。

表达式1:一般为赋值表达式,给控制变量赋初值;

表达式2:关系表达式或逻辑表达式,循环控制条件;

表达式3:一般为赋值表达式,给控制变量增量或减量。

语句:循环体,当有多条语句时,必须使用复合语句。

for循环的流程图如图3 - 11,其执行过程如下:

首先计算表达式1,然后计算表达式2,若表达式2为真,则执行循环体;否则,退出for循环,执行for循环后的语句。如果执行了循环体,则循环体每执行一次,都计算表达式3,然后重新计算表达式2,依此循环,直至表达式2的值为假,退出循环。

计算自然数1到n的平方和。

#include <stdio.h>

#include <math.h>

main( )

{

int i;

float s;

printf("please input n :");

scanf("%d" ,&n);

s = 0.0;

for(i = 1; i<= n; i++)

s = s + ( float ) (i) * ( float ) (i);

printf("11 + 2 2 +...+%d*%d = %f\n" ,n,n,s ) ;

}

运行结果如下:

please input n : 5

11 + 2 2 + ... + 5* 5 = 55.000000

for语句的几种格式

for语句的三个表达式都是可以省略的,但分号";"绝对不能省略。

三种语句的选用

同一个问题,往往既可以用w h i l e语句解决,也可以用do. . .while或者for语句来解决,但在实际应用中,应根据具体情况来选用不同的循环语句,选用的一般原则是:

  1. 如果循环次数在执行循环体之前就已确定,一般用f o r语句;如果循环次数是由循环体
    的执行情况确定的,一般用while语句或者do. . . while语句。
  2. 当循环体至少执行一次时,用do. . .while语句,反之,如果循环体可能一次也不执行,选用while语句。
    嵌套 for 循环 :[20分钟]
    知识点讲解1
    案例讲解:

/* 范例名称:输出半边*号的菱形

  • 源文件名称:Cpp5.cpp
  • 要 点:

*/

例题内容:

#include <stdio.h>

void main()

{

int num,j,i;

for (num = 1; num <=5; num++)

{

		for (i = 1; i <= num; i++)
		{
			printf("*");
		}
		printf("\n");
	} 
	for (num = 4; num >=1; num--) 
	{ 
		 
		for (j = 1; j <= num; j++)
		{
			printf("*");
		}
		printf("\n");
	} 
}

循环的嵌套

一个循环的循环体中有另一个循环叫循环嵌套。这种嵌套过程可以有很多重。一个循环外面仅包围一层循环叫二重循环;一个循环外面包围两层循环叫三重循环;一个循环外面包围多层循环叫多重循环。

三种循环语句for、while、do. . .while可以互相嵌套自由组合。但要注意的是,各循环必须完整,相互之间绝不允许交叉。如下面这种形式是不允许的:

do

{

...

for (;😉

{

...

}while( );

}

格式:for(...,...,... ) 要强调中间的逗号不能少。。。

{

for(...,...,...)

}

首先执行第一个for循环语句,接着进入第二个,在第二个for循环没有跳出前,第一个for循环下的语句不会执行,且第二个循环结束后再回到第一个for中,继续执行语句直到第一个for循环也结束才执行以后的语句了。

一个for循环中包含多个for循环,重要的是边界条件!!相互嵌套的2个for循环之间的条件应该多加注意!!

跳转语句(return和goto): [7分钟]

return用于从函数返回,goto可将控制权传递给c程序中本函数内的任何其他语句,还可以跳转到某代码块和从某代码块跳出

跳转语句(break,continue和exit): [27分钟]

return,goto,break,continue都是无条件转移的语句

exit()函数是程序立即中止,控制权传回操作系统;c语言中不是很支持

本章总结 [10分钟]

理解 C 语言中的 for 循环

使用逗号运算符

理解嵌套循环

理解 while 循环和 do-while 循环

使用 break 和 continue 语句

理解 exit() 函数

考核点

考核点1:理解嵌套循环

考核点2:理解while 循环和 do-while 循环

测试题

测试题1:

测试题2:

扩展部分:

扩展部分1:while 循环和 do-while 循环的区别

扩展部分2:

扩展部分3:

学员问题汇总:

学员问题1:

学员问题2:

作业:

习题1:打印魔方

习题2: 打印复杂的菱形

习题3:求鸡兔公笼的问题

习题4:求5!

习题5:求任意两个数之间的和;

相关推荐
字节全栈_kYu1 小时前
微信小程序视频点播在线视频学习系统 毕业设计 课程设计(1)首页_微信小程序视频功能设计流程图
学习·微信小程序·课程设计
想拿高薪的韭菜1 小时前
人工智能第2章-知识点与学习笔记
人工智能·笔记·学习
jerry6091 小时前
注解(Annotation)
java·数据库·sql
Future_yzx1 小时前
Java Web的发展史与SpringMVC入门学习(SpringMVC框架入门案例)
java·前端·学习
Future_yzx1 小时前
Spring MVC学习——发送请求(@RequestMapping注解及请求参数绑定)
学习·spring·mvc
辞半夏丶北笙3 小时前
最近最少使用算法(LRU最近最少使用)缓存替换算法
java·算法·缓存
小菜鸟博士3 小时前
手撕Vision Transformer -- Day1 -- 基础原理
人工智能·深度学习·学习·算法·面试
星如雨グッ!(๑•̀ㅂ•́)و✧3 小时前
Java NIO全面详解
java·python·nio
Bluesonli4 小时前
UE5 蓝图学习计划 - Day 6:角色蓝图
学习·ue5·unreal engine
Bluesonli4 小时前
第 2 天:创建你的第一个 UE5 C++ 项目!
c++·学习·ue5·虚幻·虚幻引擎·unreal engine