第五章循环结构程序设计习题解答
- 格式:ppt
- 大小:459.00 KB
- 文档页数:21


1 实训06 循环结构程序设计
区队: 姓名: 学号:
(请将此文件名改为“学号_姓名06.doc”,上传到文件服务器ftp://192.168.41.254:36)
一、实训目的
1、熟练运用while语句、do-while语句、for语句和break语句、continue语句。
2、初步掌握循环的嵌套及应用。
3、巩固数组基本知识及应用。
4、掌握循环结构程序设计的基本方法。
二、实训内容
1、编程求1+3+5+„„+(2n-1)。
方法1:用while语句实现
(1)程序:
#include
void main()
{
int i=1,n,s=0;
printf("请输入一个正整数:");
scanf("%d",&n);
while(i<=2*n-1)
{
s+=i;
i+=2;
}
printf("\ns=%d\n",s);
}
(2)程序调试过程中发现的问题及解决办法:
(3)程序运行结果:
输入:
输出:
2
方法2:用do-while语句实现
(1)程序:
#include
void main()
{
int i=1,n,s=0;
printf("请输入一个正整数:");
scanf("%d",&n);
do
{
s+=i;
i+=2;
}while(i<=2*n-1);
printf("\ns=%d\n",s);
}
(2)程序调试过程中发现的问题及解决办法:
(3)程序运行结果:
输入:
输出: 3
方法3:用for语句实现
(1)程序:
#include
void main()
{
int i=1,n,s=0;
printf("请输入一个正整数:");
scanf("%d",&n);
for(i=1;i<=2*n-1;i=i+2)
s+=i;
printf("\ns=%d\n",s);
C语⾔程序设计第五次作业——循环结构(1)
(⼀)改错题
输出华⽒摄⽒温度转换表:输⼊两个整数lower和upper,输出⼀张华⽒摄⽒温度转换表,华⽒温度的取值范围是{lower,upper},每次增加
2℉。计算公式如下:
c = 5×(f-32)/9
其中,c表⽰摄⽒温度,f表⽰华⽒温度。
输⼊输出样例1:
Enter lower:32
Enter upper:35
fahr celsius
32 0.0
34 1.1
输⼊输出样例2:
Enter lower:40
Enter upper:30
fahr celsius
源程序(有错误的程序)
#include
int main(void)
{
int fahr , lower, upper; /* fahr表⽰华⽒度 */
double celsius; /* celsius表⽰摄⽒度 */
printf("Enter lower:");
scanf("%d",&lower);
printf("Enter upper:");
scanf("%d",&upper);
printf("fahr celsius\n"); /* 显⽰表头 */
/* 温度转换 */
for (fahr = lower , fahr <= upper, fahr ++) ;
celsius = 5 /9 * (fahr - 32.0);
printf("%3.0f %6.1f\n", fahr, celsius);
return 0;
}
对源程序进⾏编译,结果如下:
错误信息1:
错误原因:
for语句后⾯加了分号。
改正⽅法:
将分号去掉。
错误信息2:
错误原因:
for语句下没有加“{}“
改正⽅法:
在for语句下加上“{}”
错误信息3:
错误原因:
发现for语句内语句⽤逗号隔开了。
改正⽅法:
将逗号改为分号。
编译正确:
运⾏结果:
发现得不到先要的结果,继续修改程序。
错误信息4:
错误原因:
题⽬要求是每次fahr的值加2,⽽源程序是加1.
八年级信息技术下册
1 FOR 循环变量=初值TO终值[STEP步长]
循环体语句
NEXT 循环变量 第六节 循环结构程序设计(上)
授课时间:
教学目标
1、了解什么是循环;
2、掌握FOR-NEXT循环结构的用法和执行流程;
3、能对简单的FOR-NEXT循环程序进行分析和就具体的问题使用FOR-NEXT循环结构编写简单的程序;
4、培养学生的自主学习的能力和发现解决问题的能力,提高他们的逻辑思维能力和分析能力,激发学生学习的热情。
教学重难点
1、掌握FOR-NEXT循环结构的用法和执行流程;
2、分析和编写简单的FOR-NEXT循环结构程序
教学方法
讲授法 演示法 任务驱动法
教学过程
一、导入
上一节课我们学习了分支结构的程序设计,循环结构也是算法中最常用的基本结构,它能解决许多重复计算和操作的问题,也显示了计算机高效计算的能力。本节课我们学习循环结构程序设计,并编写简单的循环程序。
二、新授
(一)自主探究
计数循环语句
FOR-NEXT的基本格式
其中For 为循环的入口语句,Next为循环的终端语句,中间的循环体语句是要重复执行的语句,执行过程为:
1、循环变量赋初值;
2、判断循环变量的值是否超过终值,若未超过,则执行循环体八年级信息技术下册
2 语句,若超过终值,就退出循环体,执行Next后面的语句;
3、循环变量增加一个步长值,转向2,继续循环。
(二)操作实践
1、启动vb,新建工程;
2、设计程序“输出1~20之间,这个数以及它的平方和立方”的程序界面。
3、设计输出20个数的平方、立方程序。程序语句为:
Print “x”,“x*x”,“x*x*x”
For x=1 to 20 step 1
Print x,x*x,x*x*x
Next x
4、双击“输出”命令按钮,输入方框中的程序语句。
循环结构程序设计
一、选择题:
1. 设有程序段int k=10;while(k=0) k=k-1;则下面描述中正确的是(C)
A. while 循环执行10次 B.循环是无限循环
C.循环体语句一次也不执行 D. 循环体语句执行一次
2. 设有以下程序段
int x=0,s=0;
while(!x!=0) s+=++x;
printf(“%d”,s);则()
A运行程序段后输出0 B.运行程序段后输出1
C.程序段中的控制表达式是非法的 D.程序段执行无限次
3. 语句while(!E);中的表达式 !E等价于()
A. E= =0 B.E!=1 C.E!=0 D.E= =1
4. 下面程序的运行结果是()
a=1;b=2;c=2;
while(a
printf(“%d,%d,%d”,a,b,c);
A.1,2,0 B.2,1,0 C.1,2,1 D.2,1,1
5. 下面程序的运行结果是()
x=y=0;
while (x<15) y++,x+=++y;
printf(“%d,%d”,y,x);
A.20,7 B.6,12 C.20,8 D.8,20
6. 下面程序的运行结果是()
int n=0;
while(n++<=2) ;printf(“%d”,n);
A.2 B.3 C.4 D.有语法错
7. 设有程序段
t=0;
while(printf(“*”))
{t++;
if(t<3) break;}
A. 其中循环控制表达式与0等价B. 其中循环控制表达式与 ‘0’等价
B. 其中循环控制表达式是不合法的D.以上说法都不对
8. 下面程序的功能是将从键盘输入的一对数,由小到大排序输出,当输入一对相等数时结束循环,请选择填空:
#include “stdio.h”
main()
{int a,b,t;
scanf(“%d%d”,&a,&b);