C语言实验报告5——循环结构程序设计

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

学生实验报告

学号 : 日期 : 2014-06-22

系别计算机

科学与

技术

专业

计算机科学

与技术(师)

班级姓名

课程名称C语言程序设计

课程

类型

专业课

学时

2

实验

名称

循环结构程序设计

实验目的

掌握C语言三种循环结构语句格式;

理解C语言三种循环结构控制语言的执行过程;

学习应用C语言三种循环结构控制语句结构构造程序;

积累环境下进行程序调试经验;

实验要求:

实验后写实验报告。

实验内容

1、输入n个数,从中找出最大数。(n值从键盘输入);

2、补充教材138页6.2题1_3三个程序,并上机运行,结合程序功能分

析运行结果;

3、采用C语言的三种循环控制语句设计实现教材6.5题;

4、完成教材42页实验题的“国王承诺问题”。

1、设计的源程序:

/*计算n个正整数中最大值*/

#include "stdio.h"

main()

{

int a,i,n,max;

i=2;max=0;

printf("Input two numbers:");

scanf("%d%d",&n,&a); /*从键盘输入n个正整数*/

while(i<=n)

{

scanf("%d",&a);

max=a>max? a:max;

i++;

}

printf("max=%d\n",max);

}

运行结果:当输入五个正整数时,程序最后输出了这五个数中的最大值教材138页6.2题:

(1)计算奇数求和,补充后第一个源程序为:

#include "stdio.h"

main()

{

int i,sum = 0;

for (i = 1;i<=101;i += 2)

{

sum += i;

}

printf("sum = %d\n",sum);

}

运行结果:

分析:当输入50时,就得到了前50个奇数的和,与理论符合,即为2601。

(2)计算1*2*3+3*4*5+...+99*100*101的值

补充后的第二个源程序为:

#include "stdio.h"

main()

{

long i;

long term,sum = 0;

for (i = 1;i <= 99;i = i + 2)

{

term = i * (i + 1) * (i + 2);

sum = sum + term;

}

printf("sum = % ld",sum);

}

运行结果:

(3)计算a+aa+aaa+...+aa...a(n个a)的值,n和a的值由键盘输入。

补充后的源程序:

#include "stdio.h"

main()

{

long term = 0,sum = 0;

int a,i,n;

printf("Input a,n:");

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

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

term = i * a;

sum = sum + term;

}

printf("sum = %ld\n",sum);

}

运行结果:

分析:当输入的a值是100、n值是54的时候,最终计算的结果为148500,与自己用手计算的结果完全一样。说明补充后的程序就是符合题目要求的源程序。

教材140页6.5题:

第一种方法:

用while语句编程实现

/*摄氏温度转化到华氏温度*/

#include "stdio.h"

{

int C ; /*摄氏温度*/

long F; /*华氏温度*/

printf("please input the sheshi temperature:");

scanf("%d",&C);

F = 1.8 * C + 32; /*摄氏温度转化为华氏温度*/

while (C <= 300)

{

C += 10;

}

printf("F = %ld\n",F);

}

在VisualC++6.0下编译运行:

运行结果:

分析结果:当输入的摄氏温度为40度时,对应得到的华氏温度为104;当输入的华氏温度为300度时,对应转化为572华氏温度。

第二种方法:

用do_while语句编程实现

/*摄氏温度转化到华氏温度*/

#include "stdio.h"

main()

{

int C ; /*摄氏温度*/

double F; /*华氏温度*/

printf("please input the sheshi temperature:");

scanf("%d",&C);

F = 1.8 * C + 32; /*摄氏温度转化为华氏温度*/

do{

C += 10;

}while(C <= 300);

printf("F = %lf\n",F);

}

相关文档
最新文档