C语言循环结构程序设计实验报告
《C语言循环结构程序设计实验报告》由会员分享,可在线阅读,更多相关《C语言循环结构程序设计实验报告(8页珍藏版)》请在装配图网上搜索。
1、甘肃政法学院本科生实验报告(五 )姓名 : 赵明翔学院 : 公安技术学院专业 : 安全防范工程班级 : 2015 级安全防范工程班实验课程名称 : 程序设计实验日期 :2016 年月日开课时间: 2015 学年第二学期实验题目实验 5循环结构程序设计小组合作姓名赵明翔班级安全防范工学号 20158313程0145一、实验目的1.熟悉掌握用 while 语句, do.while 语句和 for 语句实现循环的方法。2.掌握在程序设计中用循环的方法实现一些常用的算法(如穷举,代,递推等)。3.进一步学习调试程序。二实验环境MiscroftVisualC+6.0 环境。三、实验内容与步骤编程序并上机
2、调试程序。(1)输入一行字符,分别统计出其中的英文字母,空格,数字和其他字符的个数。程序如下:#includeint main()char c;int letters=0,space=0,digit=0,other=0;printf(请输入一行字符 :n);while(c=getchar()!=n)if(c=a&c=A&c=0&c=9)digit+;elseother+;printf(字 母 数 : %dn 空 格 数 : %dn 数 字 数 : %dn 其 他 字 符数: %dn,letters,space,digit,other);return 0;运行结果:( 2)输出所有的水仙花数,所
3、谓水仙花数是指一个 3 位数,其各位数字李方和等于该数本身。 例如,153 是水仙花数,因为 153=12+53+33程序如下:#includeint main()int i,j,k,n;printf(paicissus numbers are);for (n=100;n1000;n+)i=n/100;j=n/10-i*10;k=n%10;if(n=i*i*i+j*j*j+k*k*k)printf(%d,n);printf(n);return 0;运行结果:( 3)猴子吃桃问题。猴子第 1 天摘下若干个桃子,当即吃了一半,还不过瘾,又多吃了一个。 第 2 天早上又将剩下的桃子吃掉一半,又多吃了
4、一个。以后每天早上都吃了前一天剩下的一半零一个。到第10 天早上想再吃时,见只剩下了1 个桃子了。求第一天共摘了多少桃子。程序如下:#includeint main()int day,x1,x2;day=9;x2=1;while(day0)x1=(x2+1)*2;x2=x1;day-;printf(total=%dn,x1);return 0;运行结果:(4)用牛顿迭代法求方程2x34x 23x60 在 1.5 附近的根 .#include#includeint main()double x1,x0,f,f1;x1=1.5;dox0=x1;f=(2*x0-4)*x0+3)*x0-6;f1=(6
5、*x0-8)*x0+3;x1=x0-f/f1;while(fabs(x1-x0)=1e-5);printf(The root of equation is%5.2fn,x1);return 0;运行结果:修改程序使所设的x 初值由 1.5 改变为 100,1000,10000 。( 1) #include #includeint main() double x1,x0,f,f1; x1=100;do x0=x1;f=(2*x0-4)*x0+3)*x0-6;f1=(6*x0-8)*x0+3;x1=x0-f/f1;while(fabs(x1-x0)=1e-5);printf(The root of
6、 equation is%5.2fn,x1);return 0;运行结果:( 2) #include #includeint main()double x1,x0,f,f1;x1=1000;dox0=x1;f=(2*x0-4)*x0+3)*x0-6;f1=(6*x0-8)*x0+3;x1=x0-f/f1;while(fabs(x1-x0)=1e-5);printf(The root of equation is%5.2fn,x1);return 0;运行结果:( 3) #include #includeint main() double x1,x0,f,f1; x1=10000;dox0=x1
7、;f=(2*x0-4)*x0+3)*x0-6;f1=(6*x0-8)*x0+3;x1=x0-f/f1;while(fabs(x1-x0)=1e-5);printf(The root of equation is%5.2fn,x1);return 0;运行结果:分析:不同的 x 初值对结果没有影响。因为牛顿迭代法是利用近似方法求根的计算方法,当后一个近似根减前一个近似根的绝对值小于10 5时,视后一个近似根为该方程的根,方程的根是唯一的, x 的初始赋值对此没有影响。修改程序,使之能输出迭代的次数和每次迭代的结果。#include#includeint main()double x1,x0,f,
8、f1;int i=0;printf(请输入 x 的初始赋值: );scanf(%d,&x1);dox0=x1;f=(2*x0-4)*x0+3)*x0-6;f1=(6*x0-8)*x0+3;x1=x0-f/f1;i+;printf(第%d次迭代的结果为:%5.2fn,i,x1);while(fabs(x1-x0)=1e-5);printf(迭代次数为 %dn,i);return 0;运行结果:分析:不同的 x 初始值对迭代的次数和结果并无影响。五、实验总结C 语言功能丰富、表达能力强、使用灵活方便、既具有高级语言的优点,又具有低级语言的许多特点,适合编写系统软件。通过本次实验,让我学会了很多东西, 但是,由于自己对课本上的知识掌握不清楚,所以在分析和编写代码时混淆了一些知识点, 导致在程序运行的时候错误百出。所以在以后的学习中,需要好好看书,尽量多掌握课本上的基础知识,还有,就是多做练习,做到熟能生巧。
- 温馨提示:
1: 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
2: 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
3.本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
5. 装配图网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。