认识(实习)报告 实验(实习)名称循环结构程序设计 日期得分指导教师系专业年级班次姓名学号
一、实验目的
(1)掌握在程序设计条件型循环结构时,如何正确地设定循环条件,以及如何控制循环的次数。
⑵了解条件型循环结构的基本测试方法。
⑶掌握如何正确地控制技术型循环结构的次数。
⑷了解对技术型循环结构进行测试的基本方法。
⑸了解在嵌套循环结构中,提高程序效率的方法。
二、实验内容
1.输入一个正整数,并将其颠倒过来,如12345对应54321.
程序 :
#include
#include
int main()
{
int n,m,t=0;
scanf(\"%d\",&n);
if(n
{
printf(\"数据输入错误!\\n\");
exit(0);
}
while(n!=0)
{
m=n%10;
t=t*10+m;
n=n/10;
}
printf(\"反序数为: %d\\n\",t);
return 0;
}
运行:
12345
反序数为: 54321
Pre any key to continue
2.将一个长整型数s的每一位数位上的偶数依次取出来,构成一个新的数t,其高位仍在高位,低位仍在低位,如s=87653142时,t中的数为8642.
程序:
#include
int main()
{
long s,t=0,p=1;
scanf(\"%ld\",&s);
while(s!=0)
{
if((s%10)%2==0)
{
t=t+(s%10)*p;
p=p*10;
}
s=s/10;
}
printf(“%ld\",t);
return 0;
}
运行:
87653142
8642
Pre any key to continue_
3.判断101~200之间有多少个素数。
程序:
#include
#include
int isprime(int m);
int main()
{
int n,s=0;
for(n=101;n
{
if(isprime(n))
s++;
}
printf(\"%d\\n\",s);
return 0;
}
int isprime(int m)
{
int i;
for(i=2;i
if(m%i==0)
return 0;
return 1;
}
运行:
21
Pre any key to continue_
三、分析与讨论
(1) 总结条件循环结构的一般方法。
(一)for循环
for循环的一般形式为:
for(;;)
{
语句序列
}
(1)先求解表达式1,然后求解表达式2,若其值为真(true),则执行for语句中内嵌的循环语句;若其值为假(false),则结束循环转到{ }后面的语句执行。
(2)求解表达式3。
(3)转回上面求解表达式2,继续执行。
(4)循环结束,执行for语句下面的一个语句。
(二)while语句
while(表达式)
{
语句序列
}
其语义是,首先计算表达式的值,当值为真(true)时,返回循环体语句;当值为假(false)时结束循环。直到表达式的值为0,则执行结构后面的语句。
特点:先判断,后执行。
(三)do-while语句
do
{
语句序列
}while(表达式);
特点:先执行,后判断。
当循环条件为真(true)时反复执行循环体,直到循环条件为假(false)终止循环。因此,其循环体将至少被执行一次。
如果for、while或do-while循环控制语句的循环体中又包含循环控制语句就构成了嵌套循环。这3种循环语句之间可相互嵌套,构成复杂的逻辑嵌套结构。
(2)如何测试计数型循环结构的控制表达式中的错误?
断点,或使用try,catch抛出异常
(3)从实验中你得到了哪些提高嵌套循环程序效率的启示?
1.注意把循环次数大的循环放在嵌套语句的外层可以产生较好的效率.
2.灵活、巧妙运用三种循环语句结构来实现嵌套。