c语言实验四循环控制二,C语言程序设计 实验四 循环控制 答案 《西北民大 电气院》供参习.doc...

实验 循环控制一,实验目的:1.熟悉用while语句,do―while语句和for语句实现循环的方法.2.掌握在程序设计中用循环的方法实现各种算法(如穷举,迭代,递推等).二,实验准备:1,复习while语句,do―while语句和for语句的特点和适用条件.2,复习continue语句和break语句的区别.3,源程序.三,实验步骤及内容:1,以下程序是用来计算S=1+2+3+…+10,请更正下列程序的错误,并上机调试.(1)main( ){ int i=1;while(i<10) {

sum+=i;++i;

}printf("sum=%d\n",sum);}(2)main( ){ int i=0,sum=0;do{ sum+=i;++i;}while(i<10);printf("sum=%d\n",sum);}(3)main( ){ int i,sum=0;for(i=1;i<10;++i)sum=sum+i;printf("sum=%d\n",sum);}2,完善程序并回答问题下列程序用来计算S=1+1/1! +1/2! +1/3! +…+1/N!main( ){ int t,n,i;float s;s=_______;t=____1_______;scanf("%d",&n);for(i=1;i<=___n________;++i){t=_t*i_____________;s=s+___1.0/t____________; }printf("s=%f\n",s);}问题:1)此程序用双循环怎么实现 请写出程序上机调试(提示:内循环计算乘,外循环实现累加). main( )

{ int t,n,i=1;

float s;

s=1.0;t=1;

scanf("%d",&n);

do{

t=t*i;

i++;

s=s+1.0/t;}

while(i<=n);

printf("s=%f\n",s);

getch();

}2)若要计算S=1/2! +1/4! +1/6! +…+1/10!,用哪种算法比较合适 请编程上机调试. #include "stdio.h"

main( )

{ int t,n,i,k;

float s;

s=0;t=1;k=2 ;

scanf("%d",&n);

for(i=2;i<=n;i=i+2)

{ for(;k<=i;k++)

t=k*t;

s=s+1.0/t;}

printf("s=%f\n",s);

getch();}

运行结果:

3,编写下列问题的源程序并上机调试.(1)输入两个正整数,求其中最大公约数和最小公倍数.main()

{

int a,b,c,d,e;

printf("please input two numbers:\n");

scanf("%d,%d",&c,&d);

if(c

{

e=c;

c=d;

d=e;

}

a=c;b=d;

while(b!=0)

{

e=a%b;

a=b;

b=e;

}

printf("公约数:%d\n",a);

printf("最小公倍数:%d\n",c*d/a);

getch();

}

运行结果

(2)输入一行字符,分别统计出其中的英文字母,空格,数字和其它字符的个数.main()

{

char c;

int letters=0,space=0,digit=0,others=0;

printf("please input some characters\n");

while((c=getchar())!='\n')

{

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

letters++;

else if(c==' ')

space++;

else if(c>='0'&&c<='9')

digit++;

else

others++;

}

printf("all in all:char=%d space=%d digit=%d others=%d\n",letters,

space,digit,others);

getch();

}(3)用牛顿迭代法求方程2x^3-4x^2+3x-6=0在1.5附近的根.#include "stdio.h"

main()

{ float x=1.5;

float x1,y,k;

do{k=6*x*x-8*x+3;

y=2*x*x

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值