文档详情

C语言循环结构程序设计实验答题.doc

发布:2017-04-18约2.92千字共8页下载文档
文本预览下载声明
甘肃政法学院 本科生实验报告 ( 五 ) 姓名:赵明翔 学院:公安技术学院 专业:安全防范工程 班级: 2015级安全防范工程班 实验课程名称:程序设计 实验日期:2016年月日 开课时间:2015学年第二学期 实验题目实验5 循环结构程序设计小组合作姓名赵明翔班级安全防范工程学 号201583130145一、实验目的熟悉掌握用while语句,do...while 语句和for语句实现循环的方法。 掌握在程序设计中用循环的方法实现一些常用的算法(如穷举, 代,递推等)。 进一步学习调试程序。二.实验环境Miscroft Visual C++6.0环境。三、实验内容与步骤编程序并上机调试程序。 输入一行字符,分别统计出其中的英文字母,空格,数字和其他字符的个数。 程序如下: #includestdio.h int main() { char c; int letters=0,space=0,digit=0,other=0; printf(请输入一行字符:\n); while((c=getchar())!=\n) { if(c=ac=z||c=Ac=Z) letters++; else if(c== ) space++; else if(c=0c=9) digit++; else other++; } printf(字母数:%d\n空格数:%d\n数字数:%d\n其他字符数:%d\n,letters,space,digit,other); return 0; } 运行结果: 输出所有的水仙花数,所谓水仙花数是指一个3位数,其各位数字李方和等于该数本身。例如,153是水仙花数,因为153=12+53+33 程序如下: #includestdio.h int 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; } 运行结果: 猴子吃桃问题。猴子第1天摘下若干个桃子,当即吃了一半,还不过瘾,又多吃了一个。第2天早上又将剩下的桃子吃掉一半,又多吃了一个。以后每天早上都吃了前一天剩下的一半零一个。到第10天早上想再吃时,见只剩下了1个桃子了。求第一天共摘了多少桃子。 程序如下: #includestdio.h int main() { int day,x1,x2; day=9; x2=1; while(day0) {x1=(x2+1)*2; x2=x1; day--; } printf(total=%d\n,x1); return 0; } 运行结果: ①用牛顿迭代法求方程在1.5附近的根. #includestdio.h #includemath.h int main() {double x1,x0,f,f1; x1=1.5; 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 equation is%5.2f\n,x1); return 0; } 运行结果: ②修改程序使所设的x初值由1.5改变为100,1000,10000。 (1)#includestdio.h #includemath.h int 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 equation is%5.2f\n,x1); return 0; } 运行结果: (2)#includestdio.h #includemath.h int main() {double x1,x0,f,f1; x1=1000; 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 equation is%5.2f\n,x1); return 0; } 运行结果: (3)#includestdio.h #
显示全部
相似文档