厦门理工学院C语言选修课上机实验实验4循环结构Word下载.docx

上传人:b****6 文档编号:19698518 上传时间:2023-01-08 格式:DOCX 页数:11 大小:146.98KB
下载 相关 举报
厦门理工学院C语言选修课上机实验实验4循环结构Word下载.docx_第1页
第1页 / 共11页
厦门理工学院C语言选修课上机实验实验4循环结构Word下载.docx_第2页
第2页 / 共11页
厦门理工学院C语言选修课上机实验实验4循环结构Word下载.docx_第3页
第3页 / 共11页
厦门理工学院C语言选修课上机实验实验4循环结构Word下载.docx_第4页
第4页 / 共11页
厦门理工学院C语言选修课上机实验实验4循环结构Word下载.docx_第5页
第5页 / 共11页
点击查看更多>>
下载资源
资源描述

厦门理工学院C语言选修课上机实验实验4循环结构Word下载.docx

《厦门理工学院C语言选修课上机实验实验4循环结构Word下载.docx》由会员分享,可在线阅读,更多相关《厦门理工学院C语言选修课上机实验实验4循环结构Word下载.docx(11页珍藏版)》请在冰豆网上搜索。

厦门理工学院C语言选修课上机实验实验4循环结构Word下载.docx

windows系列操作系统的环境。

三、实验内容与步骤

1.36块砖36人搬,男搬4女搬3,小孩2人搬1砖。

要求一次全搬完,问男、女、小孩各若干(人)?

算法提示:

设x,y,z表示男、女、小孩的人数,则有不定方程:

x+y+z=36

4x+3y+z/2=36

对x,y,z所有可能的组合测试出满足条件的解。

x、y、z的取值范围:

x:

1~9,步长1

y:

1~12,步长1

z:

2~36,步长2

对x,y,z所有可能的组合:

12×

(36/2)重复测试条件:

4*x+3*y+z/2==36&

&

x+y+z==36

是否成立,若成立则打印出x、y、z的值。

上机运行结果有几组解?

男、女、小孩各多少人?

2.设整数满足条件:

被3除余2,被5除余4,被7除余3,请编程求出满足该条件的最小的10个自然数(要求必须使用while语句)

运行结构截图:

 

3.编写程序,输入一个长整型正数,判断该数是几位数(要求必须使用do-while语句)

4.某生产豪华游轮的造船厂,第一年生产3艘,从第二年开始,每年产量是前一年的产量减去半艘再翻一番,请问第10年产量多少艘?

10年总产量多少艘?

(要求必须使用for语句)

5.在3位自然数中,统计有2个位数相等,但3个数字不全相等的偶数的个数,并输出所有满足条件的数。

【选做题】

6.分别用while、do-while、for语句编程,求数列前20项之和:

2/1,3/2,5/3,8/5,13/8·

·

【算法提示】

1)定义实变量sum、term、a、b、c,整变量i

2)初始化:

sum=0,分子a=2,分母b=1

3)初始化:

i(计数器)=1

4)计算第i项term=a/b

5)累加sum=sum+term

6)计算c=a+b,更新b=a,更新a=c

7)计数器加1,i++

8)重复4、5、6、7,直到i>

20

9)输出2位精度的结果

3次测试结果,数列前20项之和sum=

7.参考例题3-23,写一程序输出以下图案:

(要求必须使用循环)

*

***

*****

*******

*****

8.把一张10元的人民币兑换成2元和1元的纸币,请问有多少种兑换方法?

输出所有的兑换方法。

四、分析与讨论

对上机实践结果进行分析,上机的心得体会。

通过8个不同的题目,使我熟悉掌握while语句、do-while语句和for语句实现循环的方法。

更好的掌握这三种循环语句并且从中比较出它们之间的的异同点,熟悉了他们的运用方法。

使我能根据题目判断出需要什么形式的循环语句才能达到最高的准确性以及最快的效率。

特别是第7题的循环语句嵌套是需要对for循环有准确的理解才可以做到不会在嵌套中出现混乱。

成绩

教师签名:

日期:

附源程序清单:

1.#include<

stdio.h>

voidmain()

{

inta=0,b=0,c=0;

//a->

男,b->

女,c->

小孩,变量初始化为0

while(a<

=36)

{

b=0;

while(b<

c=36-a-b;

if(c>

=0)

if((36==a*4+b*3+c/2)&

(0==c%2))//小孩个数需要为偶数才成立

printf("

男人:

%d女人:

%d小孩:

%d\n"

a,b,c);

}

b++;

a++;

}

2.

#include"

stdio.h"

intmain()

inti=0,count=0;

while(count<

10)

if(i%3==2&

i%5==4&

i%7==3)

{

printf("

%d"

i);

count++;

}

i++;

}

3.#include<

#include<

math.h>

main(){longintx;

inti=0;

input:

"

);

scanf("

%ld"

&

x);

do{x=x/10;

i++;

}while(x>

0);

thenubmeris:

4.#include<

main()

{inti,x=3,y=0;

for(i=1;

i<

=10;

i++)

{x=(x-0.5)*2;

y+=x;

printf("

x=%d\n,y=%d\n"

x,y);

5.#include"

voidmain()

inti,a,b,c;

intcount=0;

for(i=100;

1000;

if(i%2==0)

a=i%10;

b=(i/10)%10;

c=i/100;

if((a==b&

b!

=c)||(a==c&

=c)||(b==c&

a!

=c))

{

count++;

printf("

%d\t"

}

\nTotally:

%d\n"

count);

6.#include<

floatsum,term,a,b,c;

inti;

sum=0;

a=2;

b=1;

i=1;

while(i<

=20)

term=a/b;

sum=sum+term;

c=a+b;

b=a;

a=c;

数列前20项之和为%.2f\n"

sum);

7.

intmain(){inti,j;

for(i=1;

=7;

++i){for(j=1;

j<

=(i<

4?

4-i:

i-4);

++j){printf("

"

}for(j=1;

i*2-1:

15-2*i);

*"

}printf("

\n"

}}

8.#include<

for(inti=0;

i++)

for(intj=0;

=5;

j++)

if(i*1+j*2==10)

10元可兑换成%d张1元和%d张2元\n"

i,j);

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

当前位置:首页 > 成人教育 > 专升本

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1