西北工业大学 C语言 循环PPT课件
合集下载
西北工业大学 C语言课件 1c语言概述
![西北工业大学 C语言课件 1c语言概述](https://img.taocdn.com/s3/m/fd37d926ed630b1c59eeb5ed.png)
块操作: Ctrl+KB--块开始标记 Ctrl+KK--块结束标记 Ctrl+KC----块拷贝 Ctrl+KV----块移动 Ctrl+KY-------块删除
C语言程序设计
第一章 C语言概述
结构特点 函数与主函数 程序由一个或多个函数组成 必须有且只能有一个主函数main() 程序执行从main开始,在main中结 束,其它函数通过嵌套调用得以执 行。 程序语句 C程序由语句组成 用“;”作为语句终止符
< >
C语言程序设计
第一章 C语言概述
<
C语言程序设计
第一章 C语言概述
9种控制语句: if( )~else~ for( )~ while( )~ do~while( ) continue break switch goto return
<
C语言程序设计
第一章 C语言概述
34种运算符: 算术运算符:+ - * / % ++ -关系运算符:< <= == > >= != 逻辑运算符:! && || 位运算符 :<< >> ~ | ^ & 赋值运算符:= 及其扩展 条件运算符:?:
语句
>
C语言程序设计
第一章 C语言概述
main() { int a,b,sum; a=10;
函数类型、函数名 说明语句
函 数 b=24; 体 sum=add(a,b); printf(”sum= %d\n",sum);
}
执行语句
C语言程序设计
第一章 C语言概述
例1.2 /*
example1.2 calculate the sum of a and b*/ 预处理命令 #include <stdio.h> /* This is the main program */ main() 注释 函数 { int a,b,sum; a=10; b=24; 语句 sum=add(a,b); printf(”sum= %d\n",sum); } /* This function calculates the sum of x and y */ int add(int x,int y) { int z; 运行结果: z=x+y; sum=34 return(z); }
C语言循环程序设计PPT教学课件
![C语言循环程序设计PPT教学课件](https://img.taocdn.com/s3/m/20487d66de80d4d8d15a4f78.png)
for (i=1;i<=9;i++) /* 1 */ { for(j=0;j<=9;j++) /* 2 */
{ for(k=0;k<=9;k++) if(101*i+20*j+101*k==1231) printf("x=%d,y=%d,z=%d\n",i,j,k);
} /* end of 2 */
if (m%i==0) { f=0;
break; } if (f) printf(“yes”); else printf(“no”); }
2020/12/12
for (i=2;i<m/2;i++) for (i=2;i<sqrt(m);i++)
if (f==1) printf(“yes”);
14
【例2】给出程序的含义.(break与continue比较)
} /* end of 1 */
}
2020/12/12
10
6.7 几种循环的比较
•四种循环可以互相代替,但不提倡用goto型循环 •while 和do while型循环:
循环变量初始化的操作应在while 和do while语 句之前完成;在while后指定循环条件;循环体中 应有可使循环结束的语句,
main()
{
int n,i=1,sum=0;
printf(“input the n=”);
scanf(“%d”,&n);
loop: if (i<=n)
{
sum+=i++; goto loop; }
printf(“the sum is %d\n’,sum);
{ for(k=0;k<=9;k++) if(101*i+20*j+101*k==1231) printf("x=%d,y=%d,z=%d\n",i,j,k);
} /* end of 2 */
if (m%i==0) { f=0;
break; } if (f) printf(“yes”); else printf(“no”); }
2020/12/12
for (i=2;i<m/2;i++) for (i=2;i<sqrt(m);i++)
if (f==1) printf(“yes”);
14
【例2】给出程序的含义.(break与continue比较)
} /* end of 1 */
}
2020/12/12
10
6.7 几种循环的比较
•四种循环可以互相代替,但不提倡用goto型循环 •while 和do while型循环:
循环变量初始化的操作应在while 和do while语 句之前完成;在while后指定循环条件;循环体中 应有可使循环结束的语句,
main()
{
int n,i=1,sum=0;
printf(“input the n=”);
scanf(“%d”,&n);
loop: if (i<=n)
{
sum+=i++; goto loop; }
printf(“the sum is %d\n’,sum);
C语言第5章循环结构PPT课件
![C语言第5章循环结构PPT课件](https://img.taocdn.com/s3/m/d9023e1f5fbfc77da369b1c0.png)
格式:while (条件1)
3. 用for 语句实现循环 4. 循环的嵌套
5. break语句和continue语句 6. 几种循环的比较 7. 程 序 举 例
第2页/共63页
一、循环概述
3
第3页/共63页
在很多实际问题中会遇到有规律性的重复运算,因 此在程序中就需要将某些语句重复执行。 • 一组被重复执行的语句称为循环体; • 每重复一次,都必须作出是继续还是停止循环的决 定,这个决定所依据的条件称为循环条件;
do {
......
for(;;) { ......
}while();
}
47
第47页/共63页
例7. 打印乘法“九九表”
1 2 3 4 56 7 89 11 22 4 33 6 9 4 4 8 12 16 5 5 10 15 20 25 6 6 12 18 24 30 36 7 7 14 21 28 35 42 49 8 8 16 24 32 40 48 56 64 9 9 18 27 36 45 54 63 72 81
循环的概念 用while语句和do-while语句实现循环
用for 语句实现循环 循环的嵌套
break语句和continue语句 几种循环的比较 程序举例
第44页/共63页
循环的嵌环中还可以嵌套循环,这就是多重循环。
循环1
循环2
28
第28页/共63页
29
第29页/共63页
(2):从高位到低位求每一位。
30
第30页/共63页
(3):从低位到高位求每一位。
31
第31页/共63页
循环结构程序设计
1. 循环的概念 2. 用while语句和do-while语句实现循环
3. 用for 语句实现循环 4. 循环的嵌套
5. break语句和continue语句 6. 几种循环的比较 7. 程 序 举 例
第2页/共63页
一、循环概述
3
第3页/共63页
在很多实际问题中会遇到有规律性的重复运算,因 此在程序中就需要将某些语句重复执行。 • 一组被重复执行的语句称为循环体; • 每重复一次,都必须作出是继续还是停止循环的决 定,这个决定所依据的条件称为循环条件;
do {
......
for(;;) { ......
}while();
}
47
第47页/共63页
例7. 打印乘法“九九表”
1 2 3 4 56 7 89 11 22 4 33 6 9 4 4 8 12 16 5 5 10 15 20 25 6 6 12 18 24 30 36 7 7 14 21 28 35 42 49 8 8 16 24 32 40 48 56 64 9 9 18 27 36 45 54 63 72 81
循环的概念 用while语句和do-while语句实现循环
用for 语句实现循环 循环的嵌套
break语句和continue语句 几种循环的比较 程序举例
第44页/共63页
循环的嵌环中还可以嵌套循环,这就是多重循环。
循环1
循环2
28
第28页/共63页
29
第29页/共63页
(2):从高位到低位求每一位。
30
第30页/共63页
(3):从低位到高位求每一位。
31
第31页/共63页
循环结构程序设计
1. 循环的概念 2. 用while语句和do-while语句实现循环
C程序设计第十章西工大PPT课件
![C程序设计第十章西工大PPT课件](https://img.taocdn.com/s3/m/a39cc1aeeff9aef8951e0656.png)
► 3.文件存储数据形式---文本文件 ► 文本(text)文件对于ASCII字符集而言,文件中每
个字节存放的是一个ASCII码,表示一个字符;对 于像汉字、日韩文字等字符集而言,使用双字节存 放字符。文本文件有UTF-8、UTF-16、UNICODE 等编码格式。
8
10.1.1 文件系统
► 4.文件存储数据形式---二进制文件 ► 二进制文件是将数据以内存中的存储形式直接存放
► 每个与主机相连的输入和输出设备也被看作文件。 即实际的物理设备抽象为逻辑文件,称为设备文件
键盘:stdin 显示器:stdout
5
10.1.1 文件系统
► 1.缓冲文件系统 ► 缓冲文件系统是指系统自动地在内存中为每一个正
在使用的文件开辟一个缓冲区。 ► 缓冲文件系统的优点是存取效率高,缺点是当输出
"w"或"wt"
"rb+"或 "r+b"
"wb"
"w+"或"wt+" "wb+"或
或"w+t"
"w+b"
含义
打开一个文件用于只读数据,文 件不存在时打开失败。 打开一个文件用于读写数据,文 件不存在时打开失败。 创建一个新文件用于只写数据, 新文件会覆盖旧文件。 创建一个新文件用于读写数据, 新文件会覆盖旧文件。
第10章 文件
1
第一部分
整体概述
THE FIRST PART OF THE OVERALL OVERVIEW, PLEASE SUMMARIZE THE CONTENT
个字节存放的是一个ASCII码,表示一个字符;对 于像汉字、日韩文字等字符集而言,使用双字节存 放字符。文本文件有UTF-8、UTF-16、UNICODE 等编码格式。
8
10.1.1 文件系统
► 4.文件存储数据形式---二进制文件 ► 二进制文件是将数据以内存中的存储形式直接存放
► 每个与主机相连的输入和输出设备也被看作文件。 即实际的物理设备抽象为逻辑文件,称为设备文件
键盘:stdin 显示器:stdout
5
10.1.1 文件系统
► 1.缓冲文件系统 ► 缓冲文件系统是指系统自动地在内存中为每一个正
在使用的文件开辟一个缓冲区。 ► 缓冲文件系统的优点是存取效率高,缺点是当输出
"w"或"wt"
"rb+"或 "r+b"
"wb"
"w+"或"wt+" "wb+"或
或"w+t"
"w+b"
含义
打开一个文件用于只读数据,文 件不存在时打开失败。 打开一个文件用于读写数据,文 件不存在时打开失败。 创建一个新文件用于只写数据, 新文件会覆盖旧文件。 创建一个新文件用于读写数据, 新文件会覆盖旧文件。
第10章 文件
1
第一部分
整体概述
THE FIRST PART OF THE OVERALL OVERVIEW, PLEASE SUMMARIZE THE CONTENT
C语言循环语句PPT课件
![C语言循环语句PPT课件](https://img.taocdn.com/s3/m/195653fd87c24028905fc39e.png)
i=1; while(i<=100) { sum=sum+i;
i++; } printf("%d",sum); }
循环条件
循环终值 循环体语句
27.12.2020
.
6
例: 显示1~10的平方
#include <stdio.h> main() { int i=1;
while(i<=10) { printf("%d*%d=%d\n",i,i,i*i);
}
while()
{ ……
}
…...
27.12.2020
.
}
14
例: 我国古代数学家张丘建在《算经》中出了一道题“鸡翁一, 值钱五;鸡母一,值钱三;鸡雏三,值钱一。百钱买百鸡, 问鸡翁、鸡母、鸡雏各几何?”
解题思路:
利用以前学过的数学知识列方程。 假设鸡翁数为x,鸡母数为y,鸡雏数为z。列方程为:
x+y+z=100 ……① 5x+3y+z/3=100……②
do
……
continue;
…...
真(非0)
while 表达式
表达式 假(0) 真(非0)
…… continue;
……
表达式3
假(0)
27.12.2020
.
25
例:把100~200之间的不能被3整除的数输出
main()
{
int n;
for(n=100;n<=200;n++)
{if(n%3==0)
continue;
3、 while和do-while循环的循环变量初值应在 while和do-while循环之前完成。
i++; } printf("%d",sum); }
循环条件
循环终值 循环体语句
27.12.2020
.
6
例: 显示1~10的平方
#include <stdio.h> main() { int i=1;
while(i<=10) { printf("%d*%d=%d\n",i,i,i*i);
}
while()
{ ……
}
…...
27.12.2020
.
}
14
例: 我国古代数学家张丘建在《算经》中出了一道题“鸡翁一, 值钱五;鸡母一,值钱三;鸡雏三,值钱一。百钱买百鸡, 问鸡翁、鸡母、鸡雏各几何?”
解题思路:
利用以前学过的数学知识列方程。 假设鸡翁数为x,鸡母数为y,鸡雏数为z。列方程为:
x+y+z=100 ……① 5x+3y+z/3=100……②
do
……
continue;
…...
真(非0)
while 表达式
表达式 假(0) 真(非0)
…… continue;
……
表达式3
假(0)
27.12.2020
.
25
例:把100~200之间的不能被3整除的数输出
main()
{
int n;
for(n=100;n<=200;n++)
{if(n%3==0)
continue;
3、 while和do-while循环的循环变量初值应在 while和do-while循环之前完成。
C语言中 循环结构 ppt课件
![C语言中 循环结构 ppt课件](https://img.taocdn.com/s3/m/9f71d88ff18583d0496459e1.png)
int main() {
return 0;
}
10
5.2 for语句
for语句的一般形式如下:
for(表达式1;表达式2;表达式3) 循环体语句
说明:for语句属于“计数”型循环。
表达式1
表达式2 真(非0)
循环体语句
假(0)
表达式3
for语句流程图
12
For语句最常用、最简单的形式
• for(循环变量赋初值;循环条件;循环变量增值)
C语言中 循环结构
第五章 循环控制结构
2
本章知识点:
–while语句的一般形式及应用 –for语句的一般形式及应用 –do...while语句的一般形式及应用 –多重循环结构的使用
•break语句和continue语句
3
5.1 while语句
语句的一般形式如下: while (表达式) 循环体语句
return 0;
}
6
• 需要注意的几个问题:
(1)累加求和算法。这个程序采用的算法思想 称为累加求和,即:不断用新累加的值取代变 量的旧值,最终得到求和结果,变量sum也叫 “累加器”,初值一般为0。
(2)必须给变量赋初值。 (3)正确判断条件的边界值。 (4) 避免出现“死循环”。 (5)可能出现循环体不执行。 (6)while后面圆括号内的表达式一般为关系表
【例5.1】 求前100个自然数的和 。
#include <stdio.h> int main() {
int n,sum=0; for (n=1;n<=100;n++)
sum=sum+n; printf("sum=%d\n",sum); retur,计算并输出S(n)的值。 S(n)=(1*2)/(3*4)-(3*4)/(5*6)+(5*6)/(7*8)+…+(-1)(n-
C语言for循环说课课件
![C语言for循环说课课件](https://img.taocdn.com/s3/m/e5404f6a66ec102de2bd960590c69ec3d5bbdb2a.png)
说教学反思
C语言说课
说教材
职业中等教育“十一五”国家级规划 教材《语言基础——C语言》(第5 版),教材由高等教育出版社出版。
此教材的特点是:在提出问题的同时 给出示例程序,而示例程序尽量将主 要的知识点演示出来,使读者对解决 同类问题的程序设计思想有比较全面 的认识。从而满足初学者以及对程序 要求不是很高的读者的需求,正好适 合中职层次的人才培养目标
■ 针对学生这一基本特征,教学模式和教学 方法要进行相应的调整
C语言说课
说课导航
说课程性质和地位 说教材 说教学目标 说教学重难点 说教学资源 说学情 说教法学法 说教学过程
说教学反思
C语言说课
教法分析
教学方法
情境导入法 案例导入法 对比教学法 任务驱动法 项目式教学法
C语言说课
教法分析
例如用案例“自然数1~100的和”来导入循 环结构
考核评价
考核 分类
考核内容
实训 学习态度
课堂
技能 30%
不迟到 率
30%
纪率 10%
作业 20%
提问 10%
评 分
项目1:初识C程序设计
项目2:C程序设计基础——数据类型转换
项目3:选择结构程序设计——学生成绩评定
项目4:循环结构程序设计——乘法表
过程 考核 40%
项 项 项目目目过(567: : :程10字数 指考0符组 针%串— —核)— ——成 图—=绩 书字(统 查符技3计询分0能类%)
课程性质
必修课
软考的重点
其它专业的前导课
C语言
软件设计的主要语言
网络专业重要语言
计控、电子的重要语言
C语言说课
课程性质和地位
C语言说课
说教材
职业中等教育“十一五”国家级规划 教材《语言基础——C语言》(第5 版),教材由高等教育出版社出版。
此教材的特点是:在提出问题的同时 给出示例程序,而示例程序尽量将主 要的知识点演示出来,使读者对解决 同类问题的程序设计思想有比较全面 的认识。从而满足初学者以及对程序 要求不是很高的读者的需求,正好适 合中职层次的人才培养目标
■ 针对学生这一基本特征,教学模式和教学 方法要进行相应的调整
C语言说课
说课导航
说课程性质和地位 说教材 说教学目标 说教学重难点 说教学资源 说学情 说教法学法 说教学过程
说教学反思
C语言说课
教法分析
教学方法
情境导入法 案例导入法 对比教学法 任务驱动法 项目式教学法
C语言说课
教法分析
例如用案例“自然数1~100的和”来导入循 环结构
考核评价
考核 分类
考核内容
实训 学习态度
课堂
技能 30%
不迟到 率
30%
纪率 10%
作业 20%
提问 10%
评 分
项目1:初识C程序设计
项目2:C程序设计基础——数据类型转换
项目3:选择结构程序设计——学生成绩评定
项目4:循环结构程序设计——乘法表
过程 考核 40%
项 项 项目目目过(567: : :程10字数 指考0符组 针%串— —核)— ——成 图—=绩 书字(统 查符技3计询分0能类%)
课程性质
必修课
软考的重点
其它专业的前导课
C语言
软件设计的主要语言
网络专业重要语言
计控、电子的重要语言
C语言说课
课程性质和地位
C语言程序设计第5章-循环结构程序设计ppt课件
![C语言程序设计第5章-循环结构程序设计ppt课件](https://img.taocdn.com/s3/m/7deae2c3852458fb770b56ce.png)
分析:循环进行的条件是:i≤k和flag=0。因为在i>k时, 显然不必再去检查n是否能被整除,此外如果flag=1, 就表示n已被某一个数整除过,肯定是非素数无疑, 也不必再检查了。只有i≤k和flag=0两者同时满足才 需要继续检查。循环体只有一个判断操作:判断n 能否被i整除,如不能,则执行i=i+1,即i的值加1, 以便为下一次判断作准备。如果在本次循环中n能 被i整除,则令flag=1,表示n已被确定为非素数了, 这样就不再进行下一次的循环了。如果n不能被任 何一个i整除,则flag始终保持为0。因此,在结束 循环后根据flag的值为0或1,分别输出n是素数或非 素数的信息。
while(i<=k && !flag)
if(n % i==0) flag=1;
else i=i+1;
if(!flag)
printf("%d is a prime
number.\n",n);
else
printf("%d is not a prime
number.\n",n);
}
.
返回本章首页
第5章 循环结构程序设计
【例5_1】用while语句求p=n!
#include<stdio.h>
int main()
{ int i=1,p=1; //循环初始化部分 while(i<=5) //循环控制部分
{ p=p*i; //循环体语句 i++; //循环修改部分
}
printf("5!=%d\n",p);
return 0;
10-3,则再执行循环体,把 term 值赋给term1.然后再累加 到s中去。可以看出:程序中 term1代表当前要累加的项, term代表下一项,如果这两项 之差未超过10-3,就将下一项 加到s 中。
while(i<=k && !flag)
if(n % i==0) flag=1;
else i=i+1;
if(!flag)
printf("%d is a prime
number.\n",n);
else
printf("%d is not a prime
number.\n",n);
}
.
返回本章首页
第5章 循环结构程序设计
【例5_1】用while语句求p=n!
#include<stdio.h>
int main()
{ int i=1,p=1; //循环初始化部分 while(i<=5) //循环控制部分
{ p=p*i; //循环体语句 i++; //循环修改部分
}
printf("5!=%d\n",p);
return 0;
10-3,则再执行循环体,把 term 值赋给term1.然后再累加 到s中去。可以看出:程序中 term1代表当前要累加的项, term代表下一项,如果这两项 之差未超过10-3,就将下一项 加到s 中。
C语言循环结构程序设计 ppt课件
![C语言循环结构程序设计 ppt课件](https://img.taocdn.com/s3/m/ab36c6d3f78a6529657d53a3.png)
void main() {
int i,sum=0;
设置循环 条件
for(i=1;i<=100;i++)
{
sum+=i;
}
printf("Sum = %d\n",sum);
}
程序的运行结果:
Sum = 5050
2021/3/26
C语言循环结构程序设计 ppt课件
9
C语言循环结构程序设计
说明:
(1) for语句的一般形式中的“表达式1”可以省略,此 时应在for语句之前给循环变量赋初值。注意省略表 达式1时,其后的分号不能省略。如 for(;i<=100;i++) sum=sum+i; 执行时,跳过“求解表达式1”这一步,其他不变。
while (表达式) 语句 当表达式为非0值时,执行while语 句中的内嵌语句。其特点是:先判断 表达式,后执行语句。
2021/3/26
C语言循环结构程序设计 ppt课件
23
例:用while循环求1~100的和。
#include <stdio.h> void main() {
设置循环条 件
int i=1,sum=0;
}
程序的执行结果:
Sum = 5050
2021/3/26
C语言循环结构程序设计 ppt课件
28
C语言循环结构程序设计
4.5.1 for语句和while语句
for循环语句比较灵活,可以将循环控制变量初始、循环变量修改和循环 控制表达式集中在一个for语句中,比较适合循环次数可预测的情况。 while循环适合不通过递增或递减循环控制变量的循环。
说明:
c语言循环语句PPT课件
![c语言循环语句PPT课件](https://img.taocdn.com/s3/m/ab5f21876f1aff00bed51eac.png)
6-11
6.1 While 语句
#include<stdio.h>
void main()
{ int sum,day;
day=9;
sum=1;
while(day>=1)
{
sum=2*(sum+1);
d=%d\n”,sum);
}
运行结果: sum=1534
6-12
6.2 do-while 语句
6-15
6.3 for 语句
for 语句
是 C 语言和任何其他计算机语言中最为灵活,使用
最广泛的循环语句。 格式
for(表达式1;表达式2;表达式3)
求解表达式1
表达式2 假 真
语句
{ 循环体语句; }
求解表达式3
执行过程
for语句的 下一语句
6-16
6.3 for 语句
例 用 for 语句构成循环,求
运行结果: 1*1=1 2*2=4 3*3=9 4*4=16 5*5=25 6*6=36 7*7=49 8*8=64 9*9=81 10*10=100
6-7
6.1 While 语句
例3: 统计从键盘输入一行字符的个数。
#include<stdio.h>
void main( )
{ int n=0;
此表达式的意义是什么?
do-while ( “直到型”循环)语句
格式
do {
循环体语句;
} while(表达式) ;
循环体语句 非0
表达式
执行过程
0
功能:先执行循环体,然后判断表达式。若为真则再 次执行循环体,否则退出循环。
6-13
6.2 do-while 语句
6.1 While 语句
#include<stdio.h>
void main()
{ int sum,day;
day=9;
sum=1;
while(day>=1)
{
sum=2*(sum+1);
d=%d\n”,sum);
}
运行结果: sum=1534
6-12
6.2 do-while 语句
6-15
6.3 for 语句
for 语句
是 C 语言和任何其他计算机语言中最为灵活,使用
最广泛的循环语句。 格式
for(表达式1;表达式2;表达式3)
求解表达式1
表达式2 假 真
语句
{ 循环体语句; }
求解表达式3
执行过程
for语句的 下一语句
6-16
6.3 for 语句
例 用 for 语句构成循环,求
运行结果: 1*1=1 2*2=4 3*3=9 4*4=16 5*5=25 6*6=36 7*7=49 8*8=64 9*9=81 10*10=100
6-7
6.1 While 语句
例3: 统计从键盘输入一行字符的个数。
#include<stdio.h>
void main( )
{ int n=0;
此表达式的意义是什么?
do-while ( “直到型”循环)语句
格式
do {
循环体语句;
} while(表达式) ;
循环体语句 非0
表达式
执行过程
0
功能:先执行循环体,然后判断表达式。若为真则再 次执行循环体,否则退出循环。
6-13
6.2 do-while 语句
最新c语言循环结构ppt课件
![最新c语言循环结构ppt课件](https://img.taocdn.com/s3/m/174e8a884afe04a1b071de62.png)
i++; }
。
printf(″%d\\n″,sum);
}
do语句
do语句的一般格式如下:
do 语句 while ( 表达式 ) ;
执行do语句时,先执行循环体,再计算控制表达式 的值。
如果表达式的值非零,那么再次执行循环体,然后 再次计算表达式的值。
17
do语句
使用do语句重写前面的“倒数计数”程序:
i现在为8。
i < n成立吗?
是,继续。
i = i * 2;
i现在为16。
i < n成立吗?
不成立,退出循环。
6
while语句
虽然循环体必须是单独的一条语句,但这只是个技术 问题。
如果需要多条语句,那么只要用一对大括号构造成单 独一条复合语句就可以了:
while (i > 0) { printf("T minus %d and counting\n", i); i--;
c语言循环结构
重复语句
C语言的重复语句用于设置循环。 循环是重复执行其他语句的一种语句,循
环中重复执行的语句就是循环体 C语句中,每个循环都有一个控制表达式。 每次执行循环体时都要对控制表达式进行
计算。
◦ 如果表达式为真,也就是不为零,那么继续执 行循环。
2
while语句
while语句示例:
i = 10; do {
整个过程持续到显示信息为“T minus 1 and counting”。
8
while语句
关于while语句的一些讨论:
◦ 在while循环终止时,控制表达式的值为假。因此,当通过 表达式i > 0控制循环终止时,i必须是小于或等于0的。
西工大C语言课件第四章
![西工大C语言课件第四章](https://img.taocdn.com/s3/m/fae2643e10661ed9ad51f3d0.png)
(6)break语句:中止执行switch语句和循环语句 (7)switch语句:多分支选择语句
(8)goto语句:跳转语句
(9)return语句:函数返回语句
5
第四章
4.1.2 C语句的分类
2. 函数调用语句,由函数调用和分号组成。 3. 表达式语句,由表达式和分号组成。 4. 空语句,由分号形成,空语句表示无任何计算机指令。
14
第四章
例4-2
4.4.2 getchar函数(字符输入函数)
getchar输入
#include <stdio.h>
int main()
{ char c;
c = getchar() ;
putchar(c); return 0;
}
SX04-2
15
第四章
4.4.2 getchar函数(字符输入函数)
例如:
#include <stdio.h> stdio.h头文件就包含了printf函数原型,因此C程序均应有下面的形式:
#include <stdio.h>
…… main()
由于printf等函数是常用的函数,因而大多数编译器能够自动包含 stdio.h文件来编译,所以有时可以不写 #include <stdio.h>。
printf( “Line one\n\t\tLine two\n”);
产生如下的运行结果:
1 L 2 i 3 n 4 e 5 6 o 7 n 8 e L ▁ i n e t w o 9 0 1 2 3 4 5 6 7 8 9 0 1
注意:屏幕上TAB”站”如下示意(从第一列开始,加八为下一个TAB):
.prec
(8)goto语句:跳转语句
(9)return语句:函数返回语句
5
第四章
4.1.2 C语句的分类
2. 函数调用语句,由函数调用和分号组成。 3. 表达式语句,由表达式和分号组成。 4. 空语句,由分号形成,空语句表示无任何计算机指令。
14
第四章
例4-2
4.4.2 getchar函数(字符输入函数)
getchar输入
#include <stdio.h>
int main()
{ char c;
c = getchar() ;
putchar(c); return 0;
}
SX04-2
15
第四章
4.4.2 getchar函数(字符输入函数)
例如:
#include <stdio.h> stdio.h头文件就包含了printf函数原型,因此C程序均应有下面的形式:
#include <stdio.h>
…… main()
由于printf等函数是常用的函数,因而大多数编译器能够自动包含 stdio.h文件来编译,所以有时可以不写 #include <stdio.h>。
printf( “Line one\n\t\tLine two\n”);
产生如下的运行结果:
1 L 2 i 3 n 4 e 5 6 o 7 n 8 e L ▁ i n e t w o 9 0 1 2 3 4 5 6 7 8 9 0 1
注意:屏幕上TAB”站”如下示意(从第一列开始,加八为下一个TAB):
.prec
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
第
循环体语句;
三
章
结
构 循环变量赋初值
化 程 序 设 计
循环变量增值
C 语
for语句的执行流程:
言
程 序
for
设
计
表达式1
表达式2
假(0)
第
真(非0)
三
章
循环体
结
构
化
表达式3
程
序
设
计
步骤:
1、先计算表达式1的值。
2、再计算表达式2的值, 若其值为真,则执行 循环体一次;否则跳 转第5步。
3、然后计算表达式3的 值。
循环初值 i=1;
while(i<=10)
第
三
{ sum=sum+i;
章
循环变量增值
结
i++;
构
}
化 程
printf("%d",sum);
序 设
}
计
循环条件
循环终值 循环体
C 语
例 用while循环求
言
100
n
n 1
程
序
#include <stdio.h>
设
计
main()
{ int i,sum=0;
循环初值 i=1;
while(i<=100)
第
三
{ sum=sum+i;
章
循环变量增值
结
i++;
构
}
化 程
printf("%d",sum);
序 设
}
计
循环条件
循环终值 循环体
C
语 二、do~while语句的一般形式
言
程
序 设
一般形式:
计
do 循环体语句;
while(表达式);
第 三 章
结 构 化 程 序 设 计
C
语 言 程 序 设 计
循环结构程序设计
第 三 章
结 构 化 程 序 设 计
C
语 回 顾:
言
程
序 设
C语言:结构化程序设计语言。由三种基本
计 结构组成:顺序结构、选择结构和循环结
构。
第 三 章
结 构 化 程 序 设 计
C
语
言 程
在许多实际问题中都会遇到具有规律性
序 设
的重复运算或操作,如求若干个数的和,此
do
while(i<=10)
第 { sum+=i;
{ sum+=i;
三 章
i++;
结 }while(i<=10);
i++; }
构 化
printf("%d",sum);
printf("%d",sum);
程 序
}
}
设
计
C
语 三、for语句的一般形式
言 程 序 设 计
循环条件
for(表达式1 ;表达式2 ;表达式3)
语 言
编写它的程序?
程
序 设
printf(“*\n”);
计
printf(“*\n”);
*****
printf(“*\n”);
第
printf(“*\n”);
三
章
结
printf(“*\n”);
构
化 程
问题:若想画10行、100行、1000行呢?
序
设
计
C
语
言
程 序
一、while语句的一般形式
设
计
while(表达式) 循环体语句;
C
语 ❖执行流程:
言
程
序
设
do
计
第
三 章
真(非0)
结 构 化 程 序 设 计
循环体
while expr
假(0)
C
语 例 用do~while循环求
言
100
n
程
n 1
序
设 计
#include <stdio.h>
main()
{ int i,sum=0;
i=1;
第 三
do
章
{ sum+=i;
结 构
i++;
计 时就需要用到循环结构。C语言提供了三种循
环语句,for语句,while语句和do-while语句。
第 三 章
结 构 化 程 序 设 计
C
本节内容:
语
言
程
序 设
循环结构程序设计
计
1、while语句
2、do-while语句
第 3、for语句
三 章
结 构 化 程 序 设 计
C 看下面的图形,试想用目前所学内容,怎样来
化
}while(i<=100);
程
序
printf("%d",sum);
设 计
}
C 例 while和do~while比较
语
言 程
#include <stdio.h>
序 设
main()
计 { int i,sum=0;
main() { int i,sum=0;
scanf("%d",&i);
scanf("%d",&i);
第 三
循环体内遇break.
章
无限循环: while(1)
结 构
循环体;
化
程
序
设
计
C
语 例:程序讲解
言 程 序 设 计
第 三
章 编程:计算鸭子的总数?
结 构 化 程 序 设 计
C
语 1+2+3+4+……..+10=?
言
程
序
#include <stdio.h>
设
计
main()
{ int i,sum=0;
su{smu+m=+i;=i;
程 序
此时应在 for语句之前 给循环变量赋初值。
设
计
i=1;
for(;i<=100;i++)
sum+=i;
第
三
章
分号
结 构 化
不能 少
程
序
设 计
C
语 言
2)、如果表达式3省略,此时程序设计者应另
程 序
外设法保证循环能正常结束。
设
计 for(i=1;i<=100;)
{sum+=i;
i++;
第
}
三
章
4、转回第2步。
5、结束循环,执行for 语句后面的语句。
C 问题:
语
言 程
1、 1+3+5+7+……………+99=?
序
设 计
2、2+4+6+8+…………….+100=?
#include <stdio.h> #include <stdio.h>
main()
main()
第 { int i,sum=0;
第 三 章
结 构 化 程 序 设 计
C
语 ❖执行流程:
言 程 序 设 计
第 三 章
结 构 化 程 序 设 计
while
假(0) expr
真(非0) 循环体
C
语 言
❖特点:先判断表达式,后执行循环体
程 序
❖说明:
设 计
循环体有可能一次也不执行
循环体可为任意类型语句
下列情况,退出while循环
条件表达式不成立(为零)
计
第 三 章
结 构 化 程 序 设 计
C 语
for语句的有关说明:
言
程 序
1、三个表达式之间用“ ;”分隔,是分隔符,
设 计
不是语句。
2、圆括号中的i=表1;达式1,表达式2,表达式3可
以部分或全部省略,但分号不可省略。
第 三 章
结 构 化 程 序 设 计
C
语 言
1)、for语句的一般形式中”表达式1”可省略,
{ int i,sum=0;
三 章
for(i=1;i<=99;i+=2)
for(i=2;i<=100;i+=2)
结
sum+=i;
构
化 printf("%d",sum);
程
序}
设
计
sum+=i; printf("%d",sum); }
C
语
言 程
编程:求 构 化 程 序 设 计
C
语 3)、可以同时省略表达式1和表达式3。
言
程
序 for(;i<=100;)
设
计
sum+=i;
i=1;
第 for(;i<=100;)
三 章
{
结 构
sum+=i;
化 程
i++;
序 设
}
计
C
语 言
4)、省略表达式2,程序会怎样?
程
序
设 计
fofor(ri(=i=11;;;i;+i+++) )