实验5 循环结构程序设计(2)
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
实验五循环结构程序设计(二)首先在自己对应的计算机上建立一个文件夹,即文件夹的名字为“XX106X学号的后两位姓名”,如“水养109102高玉宝”,然后在新建好的文件夹里面再建一个文件夹,文件夹名字为“实验5”,而后依次按下面要求完成作业,同时将要存盘的作业按规定的文件名保存在刚才新建好的文件夹里。
实验目的:
1、掌握循环结构程序设计的基本思想。
2、掌握for、while、do-while三种循环的灵活转换;
3、掌握用for、while、do-while语句实现双重循环程序设计。
4、在程序设计过程中实现一些常用算法。
实验内容:
实例分析1将下面用for循环实现的程序改为while循环结构和do-while循环结构。并将改写好的程序依次以文件名while2.c和until.c保存在你刚才新建好的文件夹
里。(需要存盘)
【程序清单:】
#include “stdio.h”
void main()
{
int i, j;
for(i=1; i<=5; i++)
{
for(j=1; j<=20; j++)
printf(“%d “, j);
printf(“\n”);
}
}
该程序的功能是:在一行内输出整数1到20,并连续输出5行。
该程序的运行结果是:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20
实例分析2 程序填空。
(1) 求出100以内的整数中最大的可被13整除的数是哪一个数。(需要存盘)
#include "stdio.h"
void main()
{
int i;
for(_______________;_______________; i--)
{ if(_____________________________) break; }
printf("%d\n",i);
}
将填空好的完整程序以文件名保存为aliquot.c保存在你刚才新建好的文件夹里。
(2) 以下程序打印如下图案,程序运行后,输入4给变量n,请填空。(需要存盘)
【说明】:该程序完成的功能只是打印“*”图案,图中的“10个空格”字样是说明第四行的第一个“*”离屏幕的第一列之间的距离有10个空格。
#include "stdio.h"
#define S ''
void main()
{ int n, i, j;
printf("Enter n: ");
scanf(___________________);
for( i=1; i<=n; i++)
{ for(j=1; j<=10; j++) putchar(S); /* 说明图案从屏幕的第10列开始处打印输出*/
for(j=1; __________; j++) putchar(S);
for(j=1; __________; j++) putchar('*');
________________________;
}
for(i=1; i<=n-1; i++)
{ for(j=1; j<=10; j++) putchar(S);
for(j=1;_____________; j++) putchar(S);
for(j=1;____________;j++) putchar('*');
________________________;
}
}
将填空好的完整程序以文件名保存为star.c保存在你刚才新建好的文件夹里。
实验1 用for循环和逗号运算符输出下列字符串:(需要存盘)
a z
b y
c x
d w
e v
f u
g t
h s
i r
j q
k p
l o
m n
将编写好的程序以文件名为comma.c保存在你刚才新建好的文件夹里。
实验2一辆卡车违反交通规则,撞人后逃跑。现场有三人目击事件,但都没有记住车号,只记下车号的一些特征。甲说:牌照的前两位数字是相同的;乙说:牌照的后两位
数字是相同的,但与前两位不同;丙是位数学家,他说:四位的车号刚好是一个整
数的平方。请根据以上线索求出车号。(需要存盘)
将编写好的程序以文件名保存为traffic.c保存在你刚才新建好的文件夹里。
【提示】:
①因为牌照的前两位数字与后两位数字不相同,假设用i(i从0取到9)代表前
两位,用j(j从0取到9)代表后两位,假设用k代表车牌号,则有
k=i*1000+i*100+j*10+j,且满足条件i≠j;
②根据目击者丙的说法,由于车牌号刚好是一个数的平方,而11,22,33,44,
55,66,77,88,99这些数都不可能是某一个数的平方,因此可得出车牌号
前两位不可能是0,也就是说i的取值应该是在1~9之间。
③该题的求解算法应该用穷举法,即求出下列99个数中哪个数刚好是某一个数