[经济学]第四章 语句.ppt_第1页
[经济学]第四章 语句.ppt_第2页
[经济学]第四章 语句.ppt_第3页
[经济学]第四章 语句.ppt_第4页
[经济学]第四章 语句.ppt_第5页
已阅读5页,还剩26页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

语句,基本语句,程序的基本结构:,顺序结构 选择结构 循环结构,基本语句,C语言中的语句:,1、表达式语句:,例 x=3; x+y;,在任何表达式后面加一个分号“;”就构成一条表达式语句。,2、控制语句:,C语言中的语句:,条件语句(if) 多分支选择语句(switch) 循环语句(while,do while,for) 结束本次循环语句(continue) 中止执行switch或循环语句(break) 转向语句(goto) 从函数中返回语句(return),用来完成一定的控制功能。,3、函数调用语句:,由一个函数调用加一个分号构成函数调用语句。,C语言中的语句:,例 printf(“hello!”);,4、空语句:,只有一个分号的语句,它什么也不做,有时候用来作被转向点,或循环语句中的循环体。,例 ;,5、复合语句:,用把一些语句括起来。,例 t=x; x=y; y=t;,顺序结构程序设计举例,所谓顺序结构,见下图,先执行A操作,再执行B操作,两者是顺序执行的关系。,程序举例,例 从键盘输入圆的半径,求圆的面积。,#define PI 3.1415926 #include “stdio.h“ main() float r,s; printf(“please input radius:n r=”); scanf(“%f”, ,输入:r=10 输出: area=314.159260,例 从键盘输入大写字母,用小写字母输出,#include “stdio.h“ main() char c1,c2; c1=getchar(); printf(“%c,%dn“,c1,c1); c2=c1+32; printf(“%c,%dn“,c2,c2); ,输入:A 输出:A,65 a,97,#include #include main() float a,b,c,s,area; scanf(“%f,%f,%f“, ,例 输入三角形边长,求面积,输入:3,4,6 输出:a= 3.00, b= 4.00, c= 6.00 s= 6.50 area= 5.33,顺序结构 选择结构 循环结构,顺序结构的特点: 每一条语句执行且执行一遍; 不重复执行; 也没有语句不执行。,程序的基本结构:,C的基本结构程序设计,例 从键盘输入一个大写字母,用其对应的小写字母输出,#include “stdio.h“ main() char c1,c2; c1=getchar(); printf(“%c,%dn“,c1,c1); c2=c1+32; printf(“%c,%dn“,c2,c2); ,输入:A 输出:A,65 a,97,C的基本结构程序设计,例 从键盘输入任意一字母,是小写输出对应的大写字母,是大写输出对应的小写字母。,输入一个字符c1,往哪边走呢?,C的基本结构程序设计,例 从键盘输入任意一字母,是小写输出大写,是大写输出对应的小写。,#include “stdio.h“ main() char c1,c2; c1=getchar(); if (c1=A ,输入:A 输出:a,输入:b 输出:B,第4章 选择结构,选择结构控制语句(if语句) 多分支开关语句(switch),形式二:二分支选择结构 格式:if (e) s1 else s2 执行过程:,例:if (xy) max=x; else max=y;,4.1 if语句,if语句的三种形式 形式一:不完全的if语句 格式:if(e) s; 执行过程:,#include “stdio.h“ main() char c1; c1=getchar(); if (c1=A ,#include “stdio.h“ main() char c1,c2; c1=getchar(); if (c1=A ,例:if (xy) printf(“%d”,x);,例 :从键盘输入两个整数存于变量x、y中,对x、y中的数据排序,使x中存放大数,y中存放小数,输出x、y的值。,#include void main() int x,y,t; printf(“Input 2 numbers:”); scanf(“%d%d”, ,输入:15 30,输出:big=30 small=15,输入:50 30,输出:big=50 small=30,形式三:嵌套的if语句 格式:,if ( e1 ) s1 else if (e2 ) s2 else if (e3 ) s3 . else sn ,执行过程:,例:if (score=90) printf(“优”); else if (score=80) printf(“良”); else if (score=70) printf(“中”); else if (score=60) printf(“及格”); else printf(“不及格”);,说明: if后面的表达式e类型可以任意,语句可以是复合语句 if(x) if(x!=0) if(!x) if(x=0),如:if(a=b,例 考虑下面程序的输出结果: #include main() int x,y; scanf(“%d,%d”, ,例 考虑下面程序的输出结果: #include main() int x,y; scanf(“%d,%d”, ,例 考虑下面程序的输出结果: #include main() int x,y; scanf(“%d,%d”, ,Compile Error!,if语句嵌套: 一般形式:,例 输入两数并判断其大小关系,main() int x,y; printf(“Enter integer x,y:“); scanf(“%d,%d“, ,运行:Enter integer x,y:12,23 XY Enter integer x,y:12,12 X=Y,if else 配对原则:缺省 时,else总是和它上面离它最近的if配对 就近原则,例: if (a=b) if(b=c) printf(“a=b=c”); else printf(“*”);,修改: if (a=b) if(b=c) printf(“a=b=c”); else printf(“a!=b”);, 会改变if else的配对,例,若a=3,b=3,c=3;,则输出:a=b=c,若a=3,b=3,c=5;,则输出:*,若a=1,b=3,c=5;,则无输出,若a=3,b=3,c=3;,则输出:a=b=c,若a=3,b=3,c=5;,则无输出,若a=1,b=3,c=5;,则输出:a!=b,例 考虑下面程序输出结果: main() int x=100,a=10,b=20; int v1=5,v2=0; if(ab) if(b!=15) if(!v1) x=1; else if(v2) x=10; x=-1; printf(“%d”,x); ,结果:-1,源程序-分段计算水费,# include void main(void) double x, y; printf(“Enter x:“); scanf(“%lf“, ,Enter x: -0.5 f(-0.50) = 0.00,Enter x: 9.5 f(9.50) = 12.67,Enter x: 21.3 f(21.30) = 42.75,根据输入的年份,判断该年是否为闰年。(闰年满足:该年份能被4整除但不能被100整除,或者该年份能被400整除) main() int year; printf(“Please input the year:“); scanf(“%d“, ,#include main() int x,y,z,t; printf(“please input x,y,z:“); scanf(“%d,%d,%d”, ,例 输入三个整数,把这三个数由小到大输出。,例,4.2 switch语句(开关分支语句),switch(e) case k1: s1;break; break; case k2: s2 ;break; break; . case kn: sn;break; default : s; 其中:表达式e可为int、char类型和枚举型中的一种。k为常量表达式,一般形式: 执行过程:,2执行过程 (1)当switch后面“表达式e”的值,与某个case后面的“常量表达式”的值相同时,就执行该case后面的语句(组);当执行到break语句时,跳出switch语句。 (2)如果没有任何一个case后面的“常量表达式”的值,与“表达式”的值匹配,则执行default 后面的语句(组)。,如: switch(ch) case A: case B: case C: printf(“score60n”); break; ,说明: k1,k2,kn是常量表达式,且值必须互不相同 case后可包含多个可执行语句,且不必加 switch可嵌套,break只能跳出一层嵌套; 多个case可共用一组执行语句; default可放在任意case后,相当case作用。,例 switch(score) case 5: printf(“Very good!”); case 4: printf(“Good!”); case 3: printf(“Pass!”); case 2: printf(“Fail!”); default : printf(“data error!”); ,运行结果:score为5时,输出: Very good! Good! Pass! Fail! data error!,例,例 void main() int x=1,y=0,a=0,b=0; switch(x) case 1: switch(y) case 0: a+; break; case 1: b+; break; case 2: a+;b+; break; case 3: a+;b+; printf(“na=%d,b=%d”,a,b); ,运行结果:a=2,b=1,例,求解简单表达式,例:输入一个形式

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论