版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、重点:两种选择结构语句的应用 1。if语句 2。switch语句 难点: if语句的嵌套,第3章 算法与程序设计基础,主要内容:算法的概念、表示方法及选择结构语句,1.何为算法? 解决一个实际问题而采取的方法和步骤,称之为“算法” 2 .算法的五个特征 (1)有零个或多个输入 (2)有一个或多个输出 (3)可行性 (4)确定性 (5)有穷性,3.1算法,3.1.1算法的概述,3.1.2描述算法的方法 常用的 1.自然语言表示法 2.图形表示法 (1)传统的流程图 (2)N-S流程图 3.伪代码表示法 4.计算机语言表示,传统的流程图符号:,例3.2:用传统流程图描述求1+2+3+(n-1)+n
2、的过程。,结构化程序设计中采用三种基本结构, 即顺序结构、选择结构和循环结构。 三种结构共同特点: (1)只有一个入口。 (2)只有一个出口。 (3)结构内的每一部分都有机会被执行到。 (4)结构内不存在“死循环” (无终止的循环)。,3.2 结构化程序设计方法,(1)顺序结构,传统流程图,N-S流程图,(2)选择结构,传统流程图,N-S流程图,(3)循环结构,当型循环,传统流程图,N-S流程图,直到型循环,传统流程图,N-S流程图,(3)循环结构,3.3 C语句的分类,例:求n! #include main( ) int n,i=1; long f=1; scanf(%d, ,函数调用语句,
3、表达式语句,复合语句,1.函数调用语句 2.控制语句 3.表达式语句 4.复合语句 5.空语句:仅由一个分号构成的语句,归纳起来,C语言有如下一些语句:,在C语言中,选择结构用if语句(两个分支)实现。 if语句最常用的形式: if(表达式) 语句1 else 语句2 表达式部分通常是关系表达式或逻辑表达式 引出关系运算和逻辑运算,3.4 逻辑判断运算,无论关系运算和逻辑运算有多简单或多复杂,结果只有两种:,条件成立,结果为1; 否则为0,0,3.4.2关系运算,=1,=0,=1,=0,3.4.3 逻辑运算,说明: (1)运算规则: 逻辑与: else 语句2; 例:if(xy) printf
4、(“%d”,x); else printf(“%d”,y);,if(xy) x=x-y; printf(“%d”,x);,if(xy) x=x-y; printf(“%d”,x);,格式1: if (表达式) 语句; 例:if(xy) x=x-y; printf(“%d”,x);,说明: (1) 表达式一般为逻辑表达式或关系表达式, 但也可为任何类型的表达式(包括整型、实型、字符型、指针型); 非零,则条件成立, 否则条件不成立。 例1:if(3) printf(“OK”); 例2:if(a) printf(“%d”,a); (2) if、 else后的单条语句要有分号; else子句必须与i
5、f配对使用。 (3) if、 else后的多条语句,要用 括起来,成为一个复合语句,#include main() int a,b,t; printf(“nPlease input 2 integers:n”); scanf(“%d,%d”, ,例3.9:输入两个整数,按数值由小到大的次序输出这两个数,6,8,6,6,8,6,8,6,a,b,t,b=a; a=b;,例3.10:从键盘随机输入一个整数,判断此数是否为3的倍数。,#include main() int x; printf(Please input an integer:); scanf(%d, ,例3.11:从键盘随机输入任意年份
6、,判断该年份是否为闰年。,分析: 闰年的条件是符合下面二者之一: 能被4整除,但不能被100整除; 或能被4整除,又能被400整除。,(year%4= =0 printf(Please input a year:); scanf(%d, ,例3.12:求两个数中的最大值,两个数从键盘随机输入。,#include main() float a,b,max; printf(Please input two real numbers:n); scanf(%f%f, ,引入: 若if语句中,通过表达式的“真”或“假”,来执行一个赋值语句,且给同一个变量赋值时,可用条件运算符来处理。 如:if(ab)
7、max=a; else max=b; 可写成: max=(ab)?a:b;,3.5.3条件运算符,条件运算符,例3.13:分析下面程序运行结果。,#include main() int a=1,b=4,c=3,d; d=ab?(ac?(a=0):(c=2):(b=8); printf(a=%d,b=%d,c=%d,d=%dn,a,b,c,d); ,一般形式: if (表达式1) 语句1; else if (表达式2) 语句2; else if (表达式3) 语句3; else if (表达式n) 语句n; else 语句n+1;,3.5.4多分支if语句,执行过程见下图:,例3.14:求一元二
8、次方程ax2+bx+c=0的根。,#include #include main() float a,b,c,d; printf(Please input three parameters:n); scanf(%f%f%f, ,例3.15:根据输入的学生百分制成绩,给出五分制成绩。,#include main() float score; char grade; printf(Please input a score:n); scanf(%f, ,3.5.5 if语句的嵌套 定义:在if语句中又完全包含了一个或多个if语句称为if语句 的嵌套。 一般形式: if(表达式1) if(表达式2) 语
9、句1; else 语句2; else if(表达式3) 语句3; else 语句4;,说明:C语言规定: else总是与它上面最近的且尚未配对的if进行配对 试比较: if ( ) if ( ) 语句1; else 语句2; if ( ) if ( ) 语句1; else 语句2;,if ( ) if ( ) 语句1; else 语句2;,if ( ) if ( ) 语句1; else 语句2;,例3.16:分析下面程序的运行结果。,#include main() int a=3,b=6,c=8,d=5; if(ab) if(b!=c) d=0; else d=1; printf(d=%dn,
10、d); ,例3.17:分析下面程序的运行结果。,#include main() int x=1,y=2,z=4; if(z=x+y) if(z=4) x=y=z=10; else if(z=3) x=y=z=20; else x=y=z=30; printf(%d,%d,%dn,x,y,z); ,习题:阅读程序,写结果: main() int x,y; scanf(“%d”, 三次运行该程序,每次输入:5 回车 -2回车 0 回车,y=1 y=-1 y=0,3.6 switch 语句 一般形式: switch (表达式) case 常量表达式1: 语句1; case 常量表达式2: 语句2;
11、case 常量表达式n: 语句n; default: 语句n+1; ,说明: (1)表达式一般是整型、字符型或枚举型; (2)case后表达式是常量表达式; (3)每个常量表达式的值必须互不相同; (4)各个case和default出现次序任意; (5)为在执行一个case分支后,使流程跳出switch结构, 应用一个break语句加在每个分支后(除最后一个分 支可不加) 否则将顺序执行下面每条语句,然后跳出switch结构; (6)多个case可共用一组执行语句。 (7) switch、case、default均是关键字, 用户不能当成自定义标识符。,例3.18:用switch语句解决例3-7百分制输入,五分制输出。,#include main() float score; char grade; printf(Please input a score:n); scanf(%f, ,break;,break;,break;,break;,例3.19:分析下面程序运行结果。,#include main() int a=2,b=7,c=5; switch(a0) case 1:switch(b0) case 1:printf(#);bre
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 设备采购成本控制制度
- 交通局采购制度
- 大连采购流程管理制度
- 材料备件采购管理制度
- 耗材采购入库制度
- 供应部采购物资奖罚制度
- 新幼儿园食堂采购制度
- 校园餐采购管理制度
- 政府采购办印章管理制度
- 普通单位采购竞价制度
- T/CECS 10181-2022消防排烟通风天窗
- 水利工程项目基本建设程序-水利水电工程建设基本程序
- 高中数学核心素养背景下GeoGebra辅助教学实践的研究报告 论文
- 数控车床毕业论文8000字
- 企业会计成本核算存在的问题及对策
- 2023年办文科副科长竞聘演说稿
- 苏科版三年级劳动下册第03课《纸黏土浮雕》公开课课件
- 2023年苍南县姜立夫杯数学竞赛高一试卷浙江省
- 2023年嘉兴平湖市特殊教育岗位教师招聘考试笔试题库及答案解析
- 高压电器及成套配电装置
- 秘书科工作规范
评论
0/150
提交评论