- 1、本文档共65页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
第4章 控制结构和语句
第四章 控制结构和语句 要求 理解结构化程序设计 熟练掌握顺序结构、选择结构、循环结构、多重循环结构 理解算法与程序 主要内容 顺序结构 选择结构 循环结构 多重循环结构 4.1 结构化程序设计 C语言是结构化程序设计语言 (C++是面向对象的程序设计语言) 结构化程序设计 基本思想:任何程序都可以用三种基本结构表示 结构化程序:由三种基本结构或其反复嵌套构成的程序 优点:结构清晰,易读,提高程序设计质量和效率 C语言的基本结构 顺序结构 选择结构 循环结构 4.2 顺序结构 特点:依次执行 //例4.1 输入华氏温度,输出摄氏温度,温度转换公式: #include stdio.h void main() { double f,c; printf(输入一个华氏温度:\n); scanf(%lf,f); c=5/9*(f-32); //正确吗? printf(c=%.2f,c); } 例 s=(x+y+z)/2 area=sqrt(s*(s-x)*(s-y)*(s-z)) #include stdio.h #include math.h void main() { float x,y,z,s, area; scanf(%f%f%f,x,y,z); s=(x+y+z)/2; area=sqrt(s*(s-x)*(s-y)*(s-z)); printf(面积为%f\n, area); } 4.3 选择结构(分支) 特点:根据条件判断,选择分支 例:把小写字母转换成大写字母 #includestdio.h main( ) { char ch; ch = getchar( ); //如果输入的不是小写字母呢? putchr(ch-32); } 形式二: if (expression) statement1 else statement2 例4.3 成绩判断Pass或者Fail #include stdio.h main( ) { int score; scanf(%d,score); if(score =60) printf(成绩为%d: Pass\n, score); else printf(成绩为%d: Fail\n, score); } 例4.5 输入两数存放到变量a、b中,若ab,把a、b变量值交换,然后输出a、b #includestdio.h main( ) { int a,b,temp; scanf(%d%d,a,b); if( a b ) { temp = a; a = b; b = a; } printf(%d %d\n, a,b); } 例 …… if(score=90) printf(excellent\n); else if(score=80) printf(good\n); else if(score=70) printf(medium\n); else if(score=60) printf(pass\n); else printf(fail\n); if ~ else 配对原则: 缺省{ }时,else总是和它上面离它最近的未配对的if配对 作业 输入1个字符,表示成绩等级A、B、C、D、E,输出对应分数范围或出错信息(90-100,80-89,70-79,60-69,0-59),要求用switch语句 输入5个数,求他们的和并输出 #include stdio.h void main() { float x,sum=0; int i=0; do{ scanf(%f,x); sum+=x; i++; }while(i5); printf(%f\n,sum); } 例do while 计算位数 #include stdio.h void main() { int x; int n=0; scanf(%d,x); do { n++; x/=10; }while(x!=0); printf(%d\n,n); } 例4.12输入100个数并求和 #include stdio.h void main() { double x, sum = 0; //sum存放100个数的和 int i = 0; printf(input data:\n); for(; i100; i++) //如果执行次数小于100, //则继续循环执行 { scanf(%lf, x); //输入1个数 sum += x; //把输入的x累加到sum变量中 } printf(%.2f
文档评论(0)