C语言程序设计.

Slides:



Advertisements
Similar presentations
While 迴圈 - 不知重複執行次數
Advertisements

CSIM, PU C Language Introduction to the C Programming Language 重覆敘述 (for,while,break,continue) 適合重複性的計算或判斷.
第4章 條件判斷與迴圈 Java 2 程式設計入門與應用.
“八皇后”问题 崔萌萌 吕金华.
循环模式 流程图的画法: 条件 y 循环体 伪代码: n Do while 条件 循环体 loop 每个循环模式的结构都是一个入口,一个出口.
第六章 循环控制.
第一章 C语言概述 计算机公共教学部.
项目三 学生成绩的分组汇总 项目要求 一个班中有四个小组,求本学期期中考试中每个小组数学成绩的总分及平均分。 项目分析
C语言程序设计.
第3章 While循环程序设计.
C语言程序设计教程 (第4版) 第5章 循环结构 李丽娟 2013年2月.
EBNF与操作语义 请用扩展的 BNF 描述 javascript语言里语句的结构;并用操作语义的方法描述对应的语义规则
高级语言程序设计 主讲人:陈玉华.
C#程序设计基础 $5 流程控制.
循环结构又称为重复结构:用来处理需要重复处理的问题,它是程序中一种很重要的结构。
C程序设计.
第 四 章 循环结构 while语句 do {} while 语句 break和continue语句
EBNF 请用扩展的 BNF 描述 C语言里语句的结构; 请用扩展的 BNF 描述 C++语言里类声明的结构;
循环结构 NEAU ACM-ICPC TEAM 主讲人:NEAU_ACM_Team.
第3章 C语言的基本语句 和程序结构设计.
Introduction to the C Programming Language
第5章 循环结构程序设计 5.1 为什么需要循环控制 5.2 用while语句实现循环 5.3 用do---while语句实现循环
第六章 循环结构程序设计 概述 while 语句 do-while 语句 for 语句 循环的嵌套 几种循环的比较
第一单元 初识C程序与C程序开发平台搭建 ---观其大略
第4章 算法与控制结构 本章要求: 掌握C语句、C语言程序的结构关系; 理解算法及算法的表示; 掌握顺序结构程序设计
第五讲 四则运算计算器(一) 精品教程《C#程序设计与应用(第2版)清华大学出版社 谭恒松 主编
第3讲 C++程序控制结构 3.1 顺序结构 3.2 分支结构 3.3 循环结构 3.4 转向控制 3.5 综合案例分析.
ENVI-IDL可视化程序设计 楚雄师范学院地理科学与旅游管理学院 杨云源 QQ:
第五章 循环结构的C程序设计 5.1 while循环语句 5.2 do-while循环语句 5.3 for循环语句 5.4 多重循环
第3章 选择结构与循环结构 王德俊 上海交通大学继续教育学院.
第二章 Java语言基础.
程序的三种基本结构 if条件分支语句 switch多路开关语句 循环语句 循环嵌套 break,continue和goto语句
計數式重複敘述 for 迴圈 P
第六章 循环控制.
授课老师:龚涛 信息科学与技术学院 2016年3月 教材:《Visual C++程序员成长攻略》 《C++ Builder程序员成长攻略》
第0章作业: 教材P12-练习与实践 1.写出用符号’*’输出描绘汉字”大”的流程图。
第4讲 C++程序控制结构(二) 4.1 循环结构 4.2 转向控制 4.3 综合案例分析.
C++大学基础教程 第3章 C++控制语句 北京科技大学 信息基础科学系.
C++程序设计 第三章 程序设计初步.
第4章 PHP流程控制语句.
程序的三种基本结构 if条件分支语句 switch多路开关语句 循环语句 循环嵌套 break,continue和goto语句
1.3 C语言的语句和关键字 一、C语言的语句 与其它高级语言一样,C语言也是利用函数体中的可执行 语句,向计算机系统发出操作命令。按照语句功能或构成的不 同,可将C语言的语句分为五类。 goto, return.
程式結構&語法.
第3章 结构化程序设计 本章导读 本章主要知识点 《 C语言程序设计》 (Visual C++ 6.0环境)
第三章 C++的语句和简单的程序设计 主要内容:
Java软件设计基础 3. 流程控制.
C++语言程序设计 C++语言程序设计 第三章 控制语句 第十一组 C++语言程序设计.
C 语言程序设计 程序的循环结构 电大崇信县工作站 梁海亮.
目录 5.1循环结构程序设计的概述 5.2 用while语句实现循环结构程序设计 5.3 用do-while语句实现循环结构程序设计
第2章 算法与C语言程序 程序 (1)数据的描述:数据的类型和组织形式(数据结构) (2)操作的描述:操作步骤(算法) 沃思指出:
C语言程序设计 第一章 数据类型, 运算符与表达式 第二章 顺序程序设计 第三章 选择结构程序设计 第四章 循环控制 第五章 数组.
Chap 5 函数 5.1 计算圆柱体积 5.2 使用函数编写程序 5.3 变量与函数.
《计算机应用基础》 第9章 程序设计基础(二).
第2章 认识C语言 教学要点 2. 1 项目二C语言程序识读 2 .2 项目三班级成绩排名 2 .3 知识链接 返回.
第九节 赋值运算符和赋值表达式.
用穷举法设计程序 南京师范大学 教育技术系 倪佳慧
项目1 C程序设计起步 学习目标: 通过该项目你可以知道: C语言的用途。 C语言的基本符号和关键字。 C语言程序的结构及特点。
第二章 类型、对象、运算符和表达式.
College of Computer Science & Technology
1.2基本算法语句 1.2.3循环语句.
输入语句 输出语句 赋值语句 条件语句 循环语句
多层循环 Private Sub Command1_Click() Dim i As Integer, j As Integer
程序设计基础.
第二章 Java基本语法 讲师:复凡.
第1章程序设计和C语言.
五 循环结构程序设计 厦大附中信息技术.
迴圈(重複性結構) for while do while.
第三章 流程控制 程序的运行流程 选择结构语句 循环结构语句 主讲:李祥 时间:2015年10月.
任课教师:戴开宇 TA:时均帅、谭肖、王安华 程序设计B班 :20-16:50(90分钟)
函式庫補充資料 1.
Presentation transcript:

C语言程序设计

项目二 商场购物 任务3:商品购买总值的统计 要求: 消费者购买了多种商品,输入每种商品的应付价格,计算最后的应付总额并输出。 解决问题需要的知识点: 1、多条信息的输入与输出; 2、对多条输入的信息的多次处理。

引例: 求1+2+……+100之和。 1

循环 结构 引例1:求1+2+……+100之和。 问题分析及解决方案: 1、高斯公式; 2、循环结构。

项目二 商场购物 —— 第5章 循环结构程序设计 章节主要内容 5.1 循环概述 5.2 while语句 5.3 do while语句 5.1 循环概述 5.2 while语句 5.3 do while语句 5.4 for语句 5.5 循环嵌套 5.6 跳转语句

5.1 循环概述 循环结构的应用场合:可以处理各类重复操作,主要用于递推与穷举算法。 S=1+2+3+……+100 ??

C语言提供三种构成循环的语句。 可实现循环的控制语句: while 语句 do ~ while 语句 for 语句 *用goto 结合 if 构成循环 给定的条件(表达式)称为循环条件,反复执行的程序段称为循环体

项目二 商场购物 —— 第5章 循环结构程序设计 章节主要内容 5.1 循环概述 5.2 while语句 5.3 do while语句 5.1 循环概述 5.2 while语句 5.3 do while语句 5.4 for语句 5.5 循环嵌套 5.6 跳转语句

while语句——超市收费系统 【问题思路】:顾客 从超市购物出来要付款的时候,顾客把购买的东西递给收银员后, 收银员对所有的商品条形码扫描,扫描一个就得到该商品的价格并 自动累加,最后扫描完,收银员一打回车,总价钱就得到了。如何实现此超市的收费系统? 【问题分析】:此过程最关键的即为价格的重复累加的操作,可通过循环来实现。

5.2 while语句 while(表达式) 循环体; 2、 while循环执行过程: 1 、while循环的一般形式: 循环体 非0

特点:先判断表达式,后执行循环体 说明: while是C语言的关键字 while后面的表达式可以是C的任意合法的表达式,其值作为逻辑值,圆括号不能少,且后面没有分号“;” 循环体在结构上是一条语句(即:可以是一条语句,此时后面必须加“;”,也可以是复合语句,此时必须加花括号,否则循环体只到第一个“;”处) 循环体有可能一次也不执行 循环体可为任意类型语句 下列情况,退出while循环 条件表达式不成立(为零) 循环体内遇break,return,goto 循环体内应有能使循环趋向于结束的语句即有能改变表达式值的语句 无限循环: 不能结束的循环

#include <stdio.h> main() { int i,sum; i=1; sum=0; while(i<=100) { sum=sum+i; i++; } printf("%d",sum); 例:用while循环求 循环条件 循环初值 循环终值 循环体 循环变量增值

å 例:用while循环求 n! #include <stdio.h> void main(void) { int n=0; 100 1 n n! #include <stdio.h> void main(void) { int n=0; long t=1,sum=0; while(n<10) { n++; t*=n; /*t中存放的是n!*/ sum+=t; } printf("%ld\n",sum); 运行结果: 403713

项目二 商场购物 —— 第5章 循环结构程序设计 章节主要内容 5.1 循环概述 5.2 while语句 5.3 do while语句 5.1 循环概述 5.2 while语句 5.3 do while语句 5.4 for语句 5.5 循环嵌套 5.6 跳转语句

do-while语句——登陆邮箱 【问题思路】:你打开网页准备登陆你的邮箱,假设密码验证给你3次机会,3次中间如果有某次回答正确了,你就可以进去系统,并且系统显示“登陆成功”,如果3次都没有回答正确,系统将显示“密码错误”。你能编写个程序实现这个功能吗? 【问题思路】:大家肯定想到要用循环,但是这个循环有一个特点就是输入密码和判断密码的操作至少要执行一次,所以我们要选择另外一种循环“do-while”。

5.3 do~while语句 do 循环体; while(表达式); 2 、do~while循环的执行过程: 非0 表达式 while 循环体 do

特点:先执行循环体,后判断表达式 说明: do、while都是C语言的关键字,do必须与while联合使用 由do开始while结束,while后面的表达式可以是C的任意合法的表达式,其值作为逻辑值,括号不能少,且括号后的“;”千万不能省。 循环体在结构上是一条语句 至少执行一次循环体 循环体内应有能使循环趋向于结束的语句 do~while可转化成while结构

例:用do while循环求 #include <stdio.h> main() { int i=1,sum=0; do { sum+=i; i++; }while(i<=100); printf("%d",sum); }

#include <stdio.h> main() { int i,sum=0; scanf("%d",&i); do while和do~while的比较 #include <stdio.h> main() { int i,sum=0; scanf("%d",&i); do { sum+=i; i++; }while(i<=10); printf("%d",sum); } #include <stdio.h> main() { int i,sum=0; scanf("%d",&i); while(i<=10) { sum+=i; i++; } printf("%d",sum); 当输入不大于10的整数时,两程序效果一样;当输入大于10的整数时,第一个程序会输出这个数,而第二个程序会输出0。

do-while语句——密码验证 【解决方案】 #include<stdio.h> void main() {long pw; int i=0,flag=0; do {printf(“请输入密码:"); scanf("%ld",&pw); i++; if(pw==123456) {flag=1;break;} }while(i<3); if(flag==1) printf("登陆成功!\n"); else printf("密码错误!\n");}

项目二 商场购物 —— 第5章 循环结构程序设计 章节主要内容 5.1 循环概述 5.2 while语句 5.3 do while语句 5.1 循环概述 5.2 while语句 5.3 do while语句 5.4 for语句 5.5 循环嵌套 5.6 跳转语句

5.4 for语句 1、for语句的一般形式: 2、for循环的执行过程: for(表达式1;表达式2;表达式3) 循环体; for 循环体 非0 表达式2 表达式1 for 2、for循环的执行过程:

for(循环变量赋初值;循环条件;循环变量增值) 循环体; #include <stdio.h> main() { int i,sum=0; for(i=1;i<=100;i++) sum+=i; printf("%d",sum); } 例:用for循环求

3、 有关for语句的说明 for语句中表达式1,表达式2 ,表达式3 是C的任意合法的表达式,其中表达式2的值作为逻辑值,用来作为循环条件。三个表达式都可省略,但分号“;”不可省略 循环体在结构上是一条语句 无限循环: for(;;) 循环体; for语句可以转换成while结构 表达式1; while(表达式2) { 循环体语句; 表达式3; }

因表达式1是置初值,整个循环只做一次,可将其放在循环之前,省略表达式1,但必须保留其后的分号 。 (1)省略表达式1 因表达式1是置初值,整个循环只做一次,可将其放在循环之前,省略表达式1,但必须保留其后的分号 。 #include <stdio.h> void main() { int i=1,sum=0; for( ; i<=100;i++) sum+=i; printf("sum=%d\n",sum); } 省略表达式1,在循环之前完成 例:用for循环求

(2)省略表达式2 省略表达式2则相当于此值始终为“真”。在这种情况下,如果循环体中没有能终止循环的语句,将成为死循环,为了使程序仍能正确终止,一般循环体中应有判别语句,即用break语句退出循环。 #include <stdio.h> void main() { int i,sum=0; for(i=1; ;i++) { if(i>100) break; sum+=i; } printf("sum=%d\n",sum); 省略表达式2 例:用for循环求 当i>100时用break退出循环

因表达式3在执行循环体之后再执行,所以可将其放入循环体中,从而省略表达式3,效果一样,但其前的分号不能省。 (3)省略表达式3 因表达式3在执行循环体之后再执行,所以可将其放入循环体中,从而省略表达式3,效果一样,但其前的分号不能省。 #include <stdio.h> void main() { int i,sum=0; for(i=1;i<=100;) sum+=i++; printf("sum=%d\n",sum); } 省略表达式3 例:用for循环求 当i++放在此处

最极端情况,省略全部表达式,将其应有功能由其他语句来代替。 (4)同时省略若干表达式 最极端情况,省略全部表达式,将其应有功能由其他语句来代替。 #include <stdio.h> void main() { int i=1,sum=0; for( ; ;) { if(i>100) break; sum+=i++; } printf("sum=%d\n",sum); 例:用for循环求 表达式均省略

当循环体比较简单时,可把其放到表达式3中去,从而使循环体本身成为空语句。 (5)省略循环体 当循环体比较简单时,可把其放到表达式3中去,从而使循环体本身成为空语句。 例:用for循环求 #include <stdio.h> void main() { int i,sum=0; for(i=1;i<=100;sum+=i++) ; printf("sum=%d\n",sum); } 省略循环体 用空语句 循环体语句放在此处

(6)for 后一对括号中的表达式可以是任意有效的c语言表达式。 void main() { int i,sum; for(i=1,sum=0;i<=100;sum+=i,i++) ; printf("sum=%d\n",sum); } 逗号表达式 逗号表达式

几种循环的比较 三种循环结构的使用原则: 如果循环次数已知,用for 如果循环次数未知,用while 如果循环体至少要执行一次,用do-while 这只是“一般”原则,不是“原则”

第5章 循环结构程序设计——总结 内 容 总 结 知 循环思想(处理重复性的操作、循环条件、循环体); 循环语句。 识 点 重 循环语句(while、do while、for)。 重 难 点