文档详情

上次作业参考答案.ppt

发布:2017-02-15约7.52千字共31页下载文档
文本预览下载声明
上次作业参考答案 //5.3 #includestdio.h main() { int a=3,b=4,c=5; printf(“输出结果是:\n” ); printf(a+bcb==c的逻辑表达式的值是%d\n,(a+bcb==c)); printf(a||b+cb-c的逻辑表达式的值是%d\n,(a||b+cb-c)); printf(!(ab)!c||1的逻辑表达式的值是%d\n,(!(ab)!c||1)); printf(!(x=a)(y=b)0的逻辑表达式的值是%d\n,(!(x=a)(y=b)0)); printf(!(a+b)+c-1b+c/2的逻辑表达式的值是%d\n,(!(a+b)+c-1b+c/2)); } //5.4 #includestdio.h main() { int a,b,c,t,max; printf(请输入3个整数:\n); scanf(%d,%d,%d,a,b,c); t=(ab)?a:b; max=(tc)?t:c; printf(3个整数的最大数是%d\n,max); } //5.4另解 #includestdio.h void main() { int a,b,c; scanf(%d,%d,%d,a,b,c); if(a=ba=c) printf(%d,a); if(b=ab=c) printf(%d,b); if(c=ac=b) printf(%d,c); } 上讲回顾 关系运算符、关系表达式; 逻辑运算符、逻辑表达式; 条件运算符的使用; 条件判断语句if等的使用; 多分支选择语句的使用; 选择结构程序设计; 本讲要点 掌握3种常见的C循环语句; 了解、掌握循环结构程序设计的3要素; 掌握循环结构语句执行的顺序; 掌握简单的循环结构程序设计; 循环结构程序设计 例1:从键盘输入三角形的三条边长,求三角形的面积。 分析 3讲中的源程序只考虑了最理想的情况,没有对是否能够构成三角形作出判断,4讲中作了补充,那么4讲中的例程是否还有不足? 4讲中对于输入的三边,如果不能构成三角形,则程序直接输出“输入无效”后而结束。通常,我们希望程序能够这样:如果用户输入的数据无效,给出提示,可以反复输入,直到输入有效的数据。 改进后的源程序 #includestdio.h #includemath.h main() { int a,b,c; /*三个变量,用来表示三条边长*/ float s,area; /*area变量用来表示面积*/ scanf(%d,%d,%d,a,b,c); /*输入三条边长的值*/ while(a+b=c||a+c=b||b+c=a) //当不能构成三角形的时候 { printf(你输入的数据无效,请重新输入\n); scanf(%d,%d,%d,a,b,c); } s=(a+b+c)/2.0; area=sqrt(s*(s-a)*(s-b)*(s-c)); /*海伦公式求面积*/ printf(The resule is area=%.2f\n,area); } 循环结构三要素 循环变量赋初值 循环的起始,从哪里开始。 循环条件 满足什么条件时才执行循环;也即告知循环终止的条件。 循环体 要被反复执行的对象 While循环语句 三种基本循环语句 ①while(表达式) { 循环体语句 } 执行过程:当表达式为非0值时,执行while语句中的内嵌语句。其特点是:先判断表达式,后执行语句。 do…while循环语句 ② do { 循环体语句 }while(表达式) ; 执行过程:先执行一次指定的循环体语句,然后判别表达式,当表达式的值为非零(“真”) 时,返回重新执行循环体语句,如此反复,直到表达式的值等于0为止,此时循环结束。 例:while和do…while的比较 #includestdio.h main( ) { int sum=0,i; scanf(“%d”,i); while(i=10) { sum+=i; i++; } printf(“sum=%d\n”,sum); } 分析 当第一次输入的i的值小于10时,两个程序的结果相同; 当第一次输入的i的值大于10时,结果不同; 结论:当while后面表达式的值第一次为真时,两种循环的结果相同,否则,循环的结果不同 for循环语句 ③for(表达式1;表达式2;表达式3) { 循环语句 } 例2:编程计算 算法流程 /*while实现*/ #includestdio.h m
显示全部
相似文档