C语言循环结构程序设计试验报告.docx

上传人:b****4 文档编号:6875691 上传时间:2023-05-10 格式:DOCX 页数:9 大小:44.10KB
下载 相关 举报
C语言循环结构程序设计试验报告.docx_第1页
第1页 / 共9页
C语言循环结构程序设计试验报告.docx_第2页
第2页 / 共9页
C语言循环结构程序设计试验报告.docx_第3页
第3页 / 共9页
C语言循环结构程序设计试验报告.docx_第4页
第4页 / 共9页
C语言循环结构程序设计试验报告.docx_第5页
第5页 / 共9页
C语言循环结构程序设计试验报告.docx_第6页
第6页 / 共9页
C语言循环结构程序设计试验报告.docx_第7页
第7页 / 共9页
C语言循环结构程序设计试验报告.docx_第8页
第8页 / 共9页
C语言循环结构程序设计试验报告.docx_第9页
第9页 / 共9页
亲,该文档总共9页,全部预览完了,如果喜欢就下载吧!
下载资源
资源描述

C语言循环结构程序设计试验报告.docx

《C语言循环结构程序设计试验报告.docx》由会员分享,可在线阅读,更多相关《C语言循环结构程序设计试验报告.docx(9页珍藏版)》请在冰点文库上搜索。

C语言循环结构程序设计试验报告.docx

C语言循环结构程序设计试验报告

甘肃政法学院

本科生实验报告

(五)

姓名:

赵明翔

学院:

公安技术学院

专业:

安全防范工程

班级:

2015级安全防范工程班

实验课程名称:

程序设计

实验日期:

2016年月日

开课时间:

2015学年第二学期

实验题目

实验5循环结构程序设计

小组合作

姓名

赵明翔

班级

安全防范工程

学号

201583130145

一、实验目的

1.熟悉掌握用while语句,do...while语句和for语句实现循环的方法。

2.掌握在程序设计中用循环的方法实现一些常用的算法(如穷举,

代,递推等)。

3.进一步学习调试程序。

二.实验环境.

MiscroftVisualC++6.0环境。

三、实验内容与步骤

编程序并上机调试程序。

(1)输入一行字符,分别统计出其中的英文字母,空格,数字和其他字符的个数。

程序如下:

#include

intmain()

{

charc;

intletters=0,space=0,digit=0,other=0;

牰湩晴尨请输入一行字符:

\n);

while((c=getchar())!

='\n')

{

if(c>='a'&&c<='z'||c>='A'&&c<='Z')

letters++;

elseif(c=='')

space++;

elseif(c>='0'&&c<='9')

digit++;

else

other++;

}

牰湩晴尨字母数:

%d\n空格数:

%d\n数字数:

%d\n其他字符数:

%d\n,letters,space,digit,other);

return0;

}

运行结果:

(2)输出所有的水仙花数,所谓水仙花数是指一个3位数,其各位33+5+3153是水仙花数,因为153=12例如,数字李方和等于该数本身。

程序如下:

#include

intmain()

{

inti,j,k,n;

printf(paicissusnumbersare);

for(n=100;n<1000;n++)

{

i=n/100;

j=n/10-i*10;

k=n_x0010_;

if(n==i*i*i+j*j*j+k*k*k)

printf(%d,n);

}

printf(\

);

return0;

}

运行结果:

(3)猴子吃桃问题。

猴子第1天摘下若干个桃子,当即吃了一半,天早上又将剩下的桃子吃掉一半,又2第还不过瘾,又多吃了一个。

多吃了一个。

以后每天早上都吃了前一天剩下的一半零一个。

到第10天早上想再吃时,见只剩下了1个桃子了。

求第一天共摘了多少桃子。

程序如下:

#include

intmain()

{

intday,x1,x2;

day=9;

x2=1;

while(day>0)

{x1=(x2+1)*2;

x2=x1;

day--;

}

printf(otal=%d\n,x1);

return0;

}

运行结果:

(4)用牛顿迭代法求方程在1.5附近的根.

23①03x?

?

6xx2?

4?

#include

#include

intmain()

{doublex1,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(Therootofequationis%5.2f\n,x1);

return0;

}

运行结果:

②修改程序使所设的x初值由1.5改变为100,1000,10000。

(1)#include

#include

intmain()

{doublex1,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(Therootofequationis%5.2f\n,x1);

return0;

}

运行结果:

(2)#include

#include

intmain()

{doublex1,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(Therootofequationis%5.2f\n,x1);

return0;

}

运行结果:

(3)#include

#include

intmain()

{doublex1,x0,f,f1;

x1=10000;

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(Therootofequationis%5.2f\n,x1);

return0;

}

运行结果:

分析:

不同的x初值对结果没有影响。

因为牛顿迭代法是利用近似方法求根的计算方法,当后一个近似根减前一个近似根的绝对值小于?

510时,视后一个近似根为该方程的根,方程的根是唯一的,x的初始赋值对此没有影响。

③修改程序,使之能输出迭代的次数和每次迭代的结果。

#include

#include

intmain()

{doublex1,x0,f,f1;

inti=0;

牰湩晴尨请输入x的初始赋值:

);

scanf(%d,&x1);

do

{x0=x1;

f=((2*x0-4)*x0+3)*x0-6;

f1=(6*x0-8)*x0+3;

x1=x0-f/f1;

i++;

牰湩晴尨第%d次迭代的结果为:

%5.2f\n,i,x1);

}while(fabs(x1-x0)>=1e-5);

牰湩晴尨迭代次数为%d\n,i);

return0;

}

运行结果:

分析:

不同的x初始值对迭代的次数和结果并无影响。

五、实验总结

C语言功能丰富、表达能力强、使用灵活方便、既具有高级语言的优点,又具有低级语言的许多特点,适合编写系统软件。

通过本次实验,让我学会了很多东西,但是,由于自己对课本上的知识掌握不清楚,所以在分析和编写代码时混淆了一些知识点,导致在程序运行的时候错误百出。

所以在以后的学习中,需要好好看书,尽量多掌握课本上的基础知识,还有,就是多做练习,做到熟能生巧。

展开阅读全文
相关资源
猜你喜欢
相关搜索
资源标签

当前位置:首页 > IT计算机 > 电脑基础知识

copyright@ 2008-2023 冰点文库 网站版权所有

经营许可证编号:鄂ICP备19020893号-2