- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
C语言程序设计 6用函数
例1: 求1+2+3+4+5 的和1.加5次,用for循环处理2. 直到加到5为止(当单项=5时执行循环,当单项5时停止循环)用while 或do while 例6-2输入一个正实数eps,计算并输出下式的值,直到最后一项的绝对值小于eps。 概述 while语句 do-while语句 几个问题: 1.in是否可以? 不可以。循环少进行一次。 2.s=s+i;语句能否和下一条语句i++; 调换位置? 不行。除非i的初始值为0。因此,编写程序 时一定要注意语句的前后顺序.否则,有可能影 响循环体的执行次数或执行结果。 3. 没有i++;(或++i;)这条语句行吗? 不行。除非在循环体内加break;语句。n是循环控制条件。不改变循环控制条件,循环控制条件永远满足,循环体将永远执行,会造成死循环。 4.循环结束时i的值是几? 举一反三6-1:1-2+3-4+5 -----变------1*1+(-1)*2+1*3+(-1)*4+1*5 #include stdio.h int fun(int n) {int s=0,i=1,f=1; while(i=n) {s=s+i*f; i++; f=-f;} return s; } main ( ) { int i=5 , sum; sum=fun(i); printf(\nsum=%d,sum); } 举一反三6-1:1-2+3-4+5 -----变------1*1+(-1)*2+1*3+(-1)*4+1*5 #include stdio.h int fun(int n) {int s=0,i=1,f=1; do {s=s+i*f; i++; f=-f;} while(i=n); return s; } main ( ) { int i=5 , sum; sum=fun(i); printf(\nsum=%d,sum); } 例6-2输入一个正实数eps,计算并输出下式的值,直到最后一项的绝对值小于eps。(例如程序运行后,eps被输入0.0001)。 #include stdio.h #include math.h double fun(double eps) {double sum=0,f=1,t=1; int n=1; while(fabs(t)=eps) { sum=sum+t; f=-f; /*正负号转变*/ n=n+3; /*控制分母*/ t=f/n; } return sum; } main() { double eps,sum; printf(Enter eps:); scanf(%lf,eps); /*输入一个特别小的数*/ sum=fun(eps); printf(\nsum=%f\n,sum); } 举一反三6-2:输入一个正实数eps,计算并输出下式的值,直到最后一项小于eps。 #include stdio.h #include math.h double fun(double eps) {double t=1.0/2,a=1,b=1,c=1,d=2,s=0; while(fabs(t)=eps) {s=s+t; a=-a; b=b+2; c=c+1; d=d+1; t=a*b/(c*d); } return s;} main() {double eps,s; scanf(%lf,eps); s=fun(eps); printf(%lf,s); } 举一反三6-3从键盘输入一批学生的成绩(以负数为结束标志),计算平均分,并统计不及格成绩的个数。 #include stdio.h main() { float grade,ave=0; /*变量ave用来存放总成绩和平均分*/ int n=0,m=0; printf(Enter grade:); scanf(%f,grade); /*输入第一个成绩*/ while(grade=0) /*输入数据大于等于0时,执行循环*/ { ave=ave+grade; n++; /*统计学生人数*/ if(grade60) m++; /*统计不及格人数*/ scanf(%f,grade); /*输入一个新数据为下一次循环做准备*/ } ave=ave/n; printf(平均分=%f,不及格人数=%d\n,ave,m); } 举一反三6-3读入一批正整数(以零或负数为结束标志),求其中的奇数和。 #include stdio.h int fun(int a) {if(a%2!=0) return
原创力文档


文档评论(0)