c语言实验报告4 循环结构程序设计

合集下载
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

《C程序设计》课程实验报告

学院:班级:姓名:学号:

实验设备:计算机1台实验日期:2011年3月1日

实验项目名称循环结构程序设计

实验目的

掌握使用三种循环语句实现循环结构的方法。

实验要求:能用while~ do~while for 三种循环语句实现循环结构,编写简单的程序,掌握这三种循环语句。

实验内容(包括步骤):1.猴子吃桃问题。猴子第一天摘下若干个桃子,当即吃了一半另一个,以后每天早晨都吃剩下的一半另一个,到第十天早晨再想吃时,就剩一个桃子。问第一天共摘了多少桃子。

要求:分别用三种语句编写程序。

2.编写程序验证下列结论:任何一个自然数n的立方都等于n个连续奇数之和。例如:13=1;23=3+5;33=7+9+11;43=13+15+17+19。

要求:程序对每个输入的自然数计算并输出相应的连续奇数,直到输入的自然数为0时止。

3.编写程序,求1-3+5-7+…-99+101的值。

4.编写程序,求e的值。e ≈ 1+1/1!+1/2!+1/3!+1/4!+…+1/n!

(1)用for循环,计算前50项。

(2)用while循环,要求直至最后一项的值小于10-6。

5.编写程序,输出从公元1600年至2000年所有闰年的年号。每输出5个年号换一行。判断公元年是否为闰年的条件是:

(1)公元年数如能被4整除,而不能被100整除,则是闰年。

(2)公元年数如能被400整除也是闰年。

6.编写程序,打印以下图形:

*

***

*****

*******

*****

***

*

7.输入一行字符,统计输入的字符中字母‘a’出现的次数(包括大小写)。

8.我国1991年有11.6亿人口,要求根据人口平均年增长率,计算从1991年算起经过多少年后我国的人口增加到15亿。

9.有一个四位数F=BBAA,前二位数相同,后二位数相同,此数又是某个自然数T的平方,求此数。

10.分解一个正整数的所有质因数

调试与结果测试:部分程序出现错误经过调整后调试正常,达到题目要求的结果,运行正常。

代码注释: 4-1-1

#include

int main()

{

int x,n;

for(x=1,n=2;n<=10;n++)

{x=2*x+2;

}

printf("第一天共摘了%d个\n",x);

return 0;

}

4-1-2

#include

int main()

{

int x,n;

x=1;

n=2;

do{x=2*x+2;

n++;}

while(n<=10);

printf("第一天摘了%d个\n",x);

return 0;

}

4-1-3

#include

int main()

{

int x,n;

x=1;

n=2;

while(n<=10)

{x=2*x+2;

n++;}

printf("第一天摘了%d个\n",x);

return 0;

}

4-2

#include

int main()

{

int n,m,t,s;

s=0;

scanf("%d",&n);

m=n*n*n;

printf("%d的三次方等于%d",n,m);

t=n*(n-1)+1;

while(s

{s=s+t;

printf("%4d",t);

t=t+2;}

printf("\n");

return 0;

}

4-3

#include

int main()

{

int i,n,sum,sign;

i=1;

sign=1;

sum=0;

for(n=0;n<=51;n++)

{i=(2*n-1)*sign;

sign=-sign;

sum=sum+i;}

printf("值为%d\n",sum);

return 0;

}

4-4-1

#include

int main()

{

double e=1,t=1;

int n;

e=1;

for(n=1;n<=49;n++)

{t=t*n;

e=e+1/t;}

printf("e=%4.2f\n",e);

return 0;

}

4-4-2

#include

#include

int main()

{

float e=1,t=1;

int n=1;

while(fabs(1/t)>=1e-6)

{t=t*n;

n++;

e=e+1/t;

}

printf("e=%10.8f\n",e);

return 0;

}

4-5

#include

int main()

{

int year,leap,m;

for(year=1600,m=0;year<=2000;year++) {

if(year%4==0)

{

if(year%100==0)

{

if(year%400==0)

leap=1;

else

leap=0;

}

相关文档
最新文档