循环结构程序设计(2)

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

实验报告_实验6 循环结构程序设计(2)(学号_姓名)

一、实验目的:

1、继续熟悉循环程序设计,掌握不确定次数循环判定条件的设置;

2、掌握多重循环的使用,能够熟悉应用穷举法、迭代法、判定素数、求最大公约定等典型算法;

3、熟悉break语句和continue语句在循环中的应用,并区分两者的不同。

二、实验内容

1、(基础题)编写程序,输出从公元2000年到3000年所有闰年的年份,每行输出10个年份。判定闰年的条件是:

(1)年份能被4整除,但不能被100整除,则是闰年;

(2)年份能被400整除也是闰年。

(提示:循环变量从2000变化到3000,然后去判断每一个年份是否为闰年,若是,则输出。由于每行只能输出10年份,还要定义一个整型变量用于计数)

程序代码:

#include

int main()

{

int year,count;

for(year=2000,count=0;year<=3000;year++)

{

if ((year%4==0)&&(year%100!=0)||(year%400==0))

{

printf("%d ",year);

count++;

if(count%10==0)

printf("\n");

}

}

printf("\n");

return 0;

}

2、(基础题)参考课件例子,编程打印输出如下图形:

(提示:可以分别利用两重循环输出上三角形、下三角形) 程序代码:

#include

int main()

{

int i,j;

for(i=1;i<=5;i++)

{

for(j=1;j<=i;j++)

printf("*");

printf("\n");

}

for(i=1;i<=4;i++)

{

for(j=1;j<=5-i;j++)

printf("*");

printf("\n");

}

return 0;

}

3、(基础题)已知有式子:xyz+yzz=532, 其中x、y、z为数字,编写程序输出所有满足条件的x、y和z。

(提示:可以利用三重循环去列举出所有可能组合,x、y、z的值只能在0-9之间)

程序代码:

#include

int main()

{

int x,y,z;

for(x=1;x<=9;x++)

for(y=1;y<=9;y++)

for(z=0;z<=9;z++)

if(x*100+10*y+z+y*100+10*z+z==532)

printf("x=%d, y=%d, z=%d\n",x,y,z);

return 0;

}

4、(基础题)输入两个正整数,输出它们的最大公约数和最小公倍数。

(提示:参考课件例子,先求最大公约数,最小公倍数=这两个数的乘积/最大公约数) 程序代码:

#include

int main()

{

int a, b, rem,times,temp;

printf("Enter a、¡éb:êo");

scanf("%d%d",&a,&b);

times=a*b;

if(a

{

temp=a;

a=b;

b=temp;

}

rem=a%b;

while(rem!=0)

{

a=b;

b=rem;

rem=a%b;

}

printf("这a两¢?个?数ºy的Ì?最Á?大䨮公?约?数ºy是º?:êo%d, 最Á?小?公?倍À?数ºy是º?:êo%d\n",b,times/b);

return 0;

}

相关文档
最新文档