实验3 控制结构1

更新时间:2023-11-19 03:12:01 阅读量: 教育文库 文档下载

说明:文章内容仅供预览,部分内容可能不全。下载后的文档,内容与下面显示的完全一致。下载之前请确认下面内容是否您想要的,是否完整无缺。

南昌大学实验报告

学生姓名: 刘鑫 学 号: 6103113093 专业班级: 计科133

√ 综合 □ 设计 □ 创新 实验日期: 实验成绩: 实验类型:□ 验证 □

一.实验名称

实验3 控制语句

二.实验目的

1.熟练掌握if 、if…else、if…elseif语句和switch语句格式及使用方法,掌握if语句中的嵌套关系和匹配原则,利用if语句和switch语句实现分支选择结构。

2.熟练掌握while语句、do ...while语句和for语句格式及使用方法,掌握三种循环控制语句的循环过程以及循环结构的嵌套,利用循环语句实现循环结构。

3.掌握简单、常用的算法,并在编程过程中体验各种算法的编程技巧。进一步学习调试程序,掌握语法错误和逻辑错误的检查方法。

三.实验内容

1. 选择结构程序设计; 2. if语句的使用;

3. 使用switch语句实现多分支选择结构; 4. 三种循环语句的应用; 5. 循环结构的嵌套;

6. break和continue语句的使用。

三.实验环境

PC微机

DOS操作系统或 Windows 操作系统 Visual c++程序集成环境

四.实验内容和步骤

本实验要求事先编好解决下面问题的程序,然后上机输入程序并调试运行程序。学会单步调试和断点调试程序及变量跟踪方法。

1.通过键盘输入一个字符,判断该字符是数字字符、大写字母、小写字母、空格还是其他字符。

2.编程实现:输入一个整数,判断该数的正负性和奇偶性之后,将其数值按照①小于10,②10~99,③100~999,④1000以上四个类别分类并显示。

要求:

(1)将变量定义为整型。

(2)输入整数前,利用cout给出提示信息。

(3)输出结果时要有必要的说明,例如:输入358时,显示358 is 100 to 999。 (4)该程序利用if语句实现。

运行程序,分别输入9,21,321,4321数据检查输出信息的正确性。

3.从键盘输入学生的考试成绩,利用计算机将学生的成绩划分等级并输出。学生的成绩可分成5个等级,90-100分为A级,80-89分为B级,70-79分为C级,60-69分为D级,0-59分为E级。要求在输入负数时,给出错误提示。

① 事先编好程序,要求分别用if语句和switch语句实现。运行程序,并检查结果是否正确。

② 再运行一次程序,输入分数为负值(如-70),这显然是输入时出错,不应给出等级。修改程序,使之能正确处理任何数据。当输入数据大于100或小于0时,通知用户“输入数据错”,程序结束

4.某航空公司规定:在旅游旺季7~9月份,如果订票20张及其以上,优惠票价的10%,20张以下,优惠5%;在旅游淡季1~6月份,10~12月份,订票20张及其以上,优惠票价的20%,20张以下,优惠10%。编写一个C程序,根据月份和旅客订票张数决定优惠率。已知机票单价,请算出旅客的总付款。请使用不同的测试数据进行测试。

5.编写程序:根据公式

?26?1111???....?.. ,输出 π的值。 2222123n要求:

(1)变量π为单精度类型,n为整型;

(2)计算当n的取值分别为20,50 ,100,200时的π值,说明什么问题? (3)修改程序,不给出n值,而改为求π值,直到最后一项的数值小于10-4 为止。 (4)对修改后的程序,输出π值以及总的项数n。输出格式为:π=值;n=值。

6.从键盘输入一个0~1000之间的任意整数,输出该整数的所有因子(例如:输入12,其因子为1,2,3,4,6,12)。

要求:

(1)采用while循环语句实现。 (2)输出格式为:Input:12

Output:1,2,3,4,6,12

7.计算并输出N以内最大的10个素数以及它们的和,N为用户任意输入的正整数(如:1000)。

要求:

(1)在程序内部加必要的注释。

(2)由于偶数不是素数,可以不考虑对偶数的处理。 (3)需要考虑N以内的素数个数没有超过10个的情况处理。 (4) 输出形式为:素数1+素数2+素数+…+素数10=总和值。

五.实验数据及处理结果

/*写出实验内容的算法(用流程图表示)、完整的程序、结果并能对结果的正确性及上机时产生的问题进行分析, */

习题1:

问题分析:首先根据题目内容大致判断出所用语句,由于题目中对于输入的判断较多,所以应该主要采用if函数来判断输入的数据是哪种类型。

数据需求:输入数据:本题的输入数据可以是字母(大小写),数字,空格以及其他字符等。

输出数据:输出即为对用户输入数据的判断。

相关公式:由于本题旨在判断,因此不涉及到运算公式。 算法设计:

1.输入用户想要输入的各类字符。 2.运用If函数进行判断,将输入的数据进行分类。 3.输出经过判断后的结果。 程序实现:#include

#include using namespace std; int main() {

char a;

cout<<\请输入一个字符\ a=getchar();

if(a==' ') cout<<\您输入的为空格\ else if(a<='z'&&a>='a') cout<<\您输入的为小写字母\ else if(a<='Z'&&a>'A') cout<<\您输入的为大写字母\ else if(a>='0'&&a<='9') cout<<\您输入的为数字\

else cout<<\您输入的为其他符号\}

程序测试:

习题二:

问题分析:题目要求判断用户输入的数字的正负性,奇偶性以及所在区间。因此需要用到if的判断结构,对输入数据进行逐层分析。

数据需求:输入数据:为任意一个整数。

输出数据:输出对数据进行判断之后得出的结论。

相关公式:数据对2取余,以及与各分界点的大小比较。

算法设计:

输入任意一个整数a。 根据a%2==0?以及a与0的大小比较得出数字的正负性和奇偶性。 根据a与各个分界点的比较得出a所在的区间。 输出经过判断后的结果。

本文来源:https://www.bwwdw.com/article/865v.html

Top