上机实验报告第九次由刀豆文库小编整理,希望给你工作、学习、生活带来方便,猜你可能喜欢“离散数学上机实验报告”。
C++语言程序设计
第九
次
上
机
报
告
班级:08(本)计算机科学与技术学号:
姓名:
周次:
上机时间:班
C++语言程序设计
一、上机目的:
(1)理解异常处理的重要性以及使用异常处理。
(2)使用不同的C++异常处理技术。
(3)能够处理不可预见的异常。
(4)熟悉标准异常处理函数。
附加内容:
1、异常处理语法
1)throw语法
Throw;
当某段程序发现了自己不能处理的异常,就可以使用throw语句将这个异常抛掷给调用者。
2)try块语法
Try
{
复合语句
}
Try语句后的复合语句是代码的保护段。如果预料到某段代码有可能发生异常,就将它放在try语句后。如果这段代码运行时真的遇到异常情况,其中的throw表达式就会抛掷这个异常。
3)catch语法
Catch语句的语法格式如下:
Catch(异常类型1参数1)
{
//针对异常类型1的处理语句
}
Catch(异常类型2参数2)
{
//针对异常类型2的处理语句
}…..…….Catch(异常类型n参数n)
{
//针对异常类型n的处理语句
}
Catch语句后的复合语句是异常处理程序,捕获由throw表达式抛掷的异常。
4)异常处理的执行过程
步骤:
①控制通过正常的顺序执行到达try语句,然后执行try块内的保护段。②如果在保护段内没有发生异常,那么跟在try块内的保护段。
③如果在保护段内执行期间或在保护段调用的任何函数中(直接或间接的调用)有异常被抛掷,则从通过throw创建的对象中创建一个异常对象。在这一点上,编译器能够处理抛掷类型的处理程序,在更高执行上下文中寻找一个catch语句。Catch处理程序按其在try块后出现的顺序被检查。如果没有找到合适的处理程序,则继续检查下一个动态封闭的try块。此处理继续下去,直到最外层的封闭try块被检查完。
二、上机内容:
在Visual C++环境下编程实现以下题目。
1、声明一个异常类Cexception,成员函数Reason,用来显示异常的类型。定义函数fn1触发异常,在主函数的try模块中调用fn1函数,在catch模块中捕获异常,观察程序的执行流程。
2、编写一个程序,求输入数的平方根。设置异常处理,对输入负数的情况给出提示。
#include
#include
using namespace std;
void main()
{
double n;
double m;
cout
cin >> n;
try
{
if(n
{
throw exception(“输入的数是负数!”);
}
m = sqrt(n);
cout
}
catch(exception e)
{
cout
}
3、下面是一个用于处理文件打不开的异常处理程序,分析程序并完成相应的问题。
//test10_2.cpp
#include
#include
Using namespace std;
Int main()
{
Ifstream source(“file9_2.txt”);
Char line[128];
Try
{
If(!source)
Throw “file9_2.txt”;//如果打开失败,跑出异常
}
Catch(char *s)
{
Cout
Exit(1);
}
While(!source.eof()){//判断是否到文件末尾
Source.getline(line,sizeof(line));
Cout
}
Source.close();
Return 0;
}
请回答以下问题:
1)若其中没有file9_2.txt文件,则输出结果如何?【写出理由】
2)在硬盘上建一个file9_1.txt文件,其文件内容自己定义。输出结果如何?【写出理由】
三、上机结果
给出C++源代码,并把上机运行结果粘贴到CPP文件末尾。
请输入一个数: 8
n的平方根是: 2.82843
Pre any key to continue
请输入一个数:-8
输入的数是负数!
Pre any key to continue
四、上机心得
主要写感想,这次上机过程的情况。包括遇到的难点,和上机的运行情况和同学们交流情况。
计算机基础上机实验(九)姓名:上机须知:a) 必须带《实验教程》,没有带的回去取;上机时间:2小时 b) 提交内容:a) 按照实验4的步骤将多媒体嵌入到PPT中(声音,录制旁白,背景音乐,视频,flash) b......
一. 题目1. 建立一个学生档案,内容包括学号,姓名,年龄,性别,数学,物理和英语3门功课成绩。要求实现以下功能:1) 数据输入;2) 查询某个学生的成绩;3) 按平均排列输出;4) 统计某门课各分数......
管理学院会计学专业上机实践报告课程名称:会计电算化 指导教师: 上机实践名称:系统管理与基础设置 上机实践编号:实验一 一、实验目的通过上机实验,理解用友企业级财务软件系统管......
C++上机实验报告实验名称:实验专业班级:姓名:学号:实验日期:10 11 实验 目录 1.实验目的 2.实验内容 3.程序代码 4.调试结果 5.实验心得 1.实验目的 实验10 (1)进一步了解运算符......
Homework3实验报告一、实验目的与要求1、掌握Java中类和接口的基本知识;2、继承的基本知识;3、集合的基本操作二、实验内容 1.PIMCollection 类创建一个可以管理PIMEntities实......