
实验5:循环结构程序设计.doc
4页实验5:循环结构程序设计实验名称: 循环结构程序设计 成绩: 实验日期: 年 月 日 实验报告日期: 年 月 日一、实验目的1、 掌握while,do-while,for循环的语法结构与应用2、 掌握while,do-while循环的区别3、 掌握Turbo C单步执行调试程序的方法二、实验内容完成程序题:1、 用三种循环结构,求1000以内奇数的和2、 用while,do-while循环求i-10的连加和,i由用户输入3、 有一堆零件(100-200个之间),如果以4个零件为一组进行分组,则多2个零件;如果以7个零件为一组进行分组,则多3个零件;如果以9个零件为一组进行分组,则多5个零件编程求解这堆零件总数提示:用穷举法求解即零件总数x从100-200循环试探,如果满足所有几个分组已知条件,那么此时的x就是一个解分组后多几个零件这种条件可以用求余运算获得条件表达式三、实验要求1、 实验前编制源程序、对第2个实验内容需要准备测试数据2、 在Turbo C下完成程序的编辑、编译、运行。
查看、分析程序结果四、实验步骤、过程1、 编辑、编译、运行程序题12、 编辑、编译、运行程序题2,分别使用数据3,15做测试3、 编辑、编译、运行程序题3五、源程序清单、测试数据、结果1、 用三种循环结构,求1000以内奇数的和1)用while结构实现void main(){ long sum; int i,item; sum=0,i=0,item=2*i+1; while(item<1000) { sum=sum+item; i++; item=2*i+1; } printf("1+3+5+...999=%ld\n",sum);}(2)用do-while结构实现void main(){ long sum; int i,item; sum=0,i=0,item=2*i+1; do { sum=sum+item; i++; item=2*i+1; }while(item<1000); printf("1+3+5+...999=%ld\n",sum);}(3)用for结构实现void main(){ long sum; int i,item; for(sum=0,i=0,item=2*i+1; item<1000; i++,item=2*i+1) sum=sum+item; printf("1+3+5+...999=%ld\n",sum);}运行结果:1+3+5+...999=2500002、用while,do-while循环求i-10的连加和,i由用户输入。
1)用while循环实现main(){ int sum=0,i; printf("Input i:");scanf("%d",&i); while(i<=10) { sum+=i; i++; } printf("sum=%d\n",sum);}测试运行结果:Input i:7
程序题1:原来sum定义为int,后来改为long后程序获得了正确的结果七、实验小结和思考1、 变量类型的选择应当考虑变量的使用范围2、 循环程序可以用三种结构实现,三种结构一般情况可以相互替换3、 while,do-while循环的区别:while先判断循环条件,如果条件满足再执行循环体,如果条件不满足,循环体一次也不执行do-while先执行一次循环体再判断循环条件,以决定是否再次执行循环体,即就是说循环体至少执行一次4、 穷举法是利用计算机高速计算能力试探搜索求解复杂问题的一种很好的方法。












