c++语言综合性设计性实验实验报告.docx

上传人:b****3 文档编号:3663994 上传时间:2022-11-24 格式:DOCX 页数:16 大小:87.61KB
下载 相关 举报
c++语言综合性设计性实验实验报告.docx_第1页
第1页 / 共16页
c++语言综合性设计性实验实验报告.docx_第2页
第2页 / 共16页
c++语言综合性设计性实验实验报告.docx_第3页
第3页 / 共16页
c++语言综合性设计性实验实验报告.docx_第4页
第4页 / 共16页
c++语言综合性设计性实验实验报告.docx_第5页
第5页 / 共16页
点击查看更多>>
下载资源
资源描述

c++语言综合性设计性实验实验报告.docx

《c++语言综合性设计性实验实验报告.docx》由会员分享,可在线阅读,更多相关《c++语言综合性设计性实验实验报告.docx(16页珍藏版)》请在冰豆网上搜索。

c++语言综合性设计性实验实验报告.docx

c++语言综合性设计性实验实验报告

c++语言综合性设计性实验实验报告

 

 

————————————————————————————————作者:

————————————————————————————————日期:

 

 

综合性、设计性实验报告

 

姓名学号

专业计算机与通信工程系计科0902班

实验课程名称c++程序设计

指导教师及职称黎明讲师

开课学期2010学年下学期

上课时间2010年12月2日

 

湖南科技学院教务处编印

一、实验设计方案

实验名称:

C++语言综合设计(自动取款机的小系统)

实验时间:

2010/12/10

小组合作:

是○否○

小组成员

1、实验目的:

1)掌握C++语言的基本知识

2)综合应用所学知识,设计一个具有一定综合性的实验;

3)用C++实现程序,并且给出程序的说明、程序运行的结果、输入和输出的数据.

2、实验设备及材料:

硬件设备:

PC机一台

机器配置:

内存:

1G

操作系统:

WindowsXP

开发工具:

VC++6。

0

3、实验内容:

①问题描述

a.设计一个自动取款机的小系统。

b.设计一个自动取款存款机的小系统。

c.设计一个刷卡自动充值交通IC卡的小系统.

②编程任务

用c++实现;

 

4、实验方法步骤及注意事项:

①实验步骤

1、先把写好的程序写入到电脑中的VC++6.0

2、再对程序进行编译

3、经过检查编译,发现编译中出现的错误再进行修改

4、再次编译,直到编译成功之后,运行程序

5、接着按照提示输入数据,进行测试

6、最后记录所得数据,查看结果

②解题思路

1.在设计程序之前,先构思好所要用到的函数,以及函数对应在程序的效果

2.先建立两个类,consumer和ATM

3.再建立存取钱、修改密码、查询余额等客户信息输出的函数

4.并且建立搜索,打印和删除特定用户信息的函数

5.同时建立打开文件、写入文件的函数

6.ATM成员函数用switch语句来对用户选择的操作项进行判断

5.实验数据处理方法:

①数据输入:

123451233

②结果输出:

6.参考文献:

C++程序设计教程(钱能著)

C++面向对象程序设计教程(谭浩强著)

指导老师对实验设计方案的意见:

 

指导老师签名:

年月日

二、实验报告

1、实验目的、设备与材料、实验内容、实验方法步骤见实验设计方案

2、实验现象、数据及结果:

输入数据:

123451233得到:

 

 

3、对实验现象、数据及观察结果的分析与讨论:

1)输入卡号与密码就进入了主界面

2)再按提示输入2就会要你输入取款的数目

3)输入取款数目后会提示你是否继续(Y/S)

4)输入3就会弹出卡的一些信息。

如用户姓名,卡号和余额

5)输入4便退出了系统

4、结论:

此程序包含了几个简单的功能:

取款,修改密码,查询余额等,还提供了用户的一些信息.这个程序简单,容易操作,让人一目了然,输入与输出过程中并没有出现错误。

5、实验总结

1)、本次实验成败之处及其原因分析:

通过这次实验我发现自己的技术不太好,主要是对函数还不是很熟悉,还有对类的运用还要加强。

粗心是我的大敌啊,一个标点或者一个括号有时都让我思绪乱了。

由于自己英语不怎么好,所以一些关键字的拼写有时会有误,以后一定要加强这方面的能力,争取不再在这方面犯错误。

2)、本实验的关键环节及改进措施:

做好本实验需要把握的关键环节:

我个人认为关键环节是类的创建与一些成员函数的调用,还有就是基础函数的运用。

有些地方还应该更简洁.

若重做本实验,为实现预期效果,仪器操作和实验步骤应如何改善:

在设计之前还应该认真全面的分析,站在整个实验的面前分析,使得程序更加完善简洁。

对基础函数一定要非常熟练,对成员函数的调用要更熟悉。

在简单的程序中还可以增添一些附加的功能。

3)、对实验的自我评价:

经过这次实验我学到了很多,仔细认真的思维方式是必不可少的,因为低级错误是可以避免的,所以对一些基础的函数要很熟悉。

在一些新的知识方面我发现它们可以提高效率,所以为了精简程序一定要学好。

这次实验大家都很努力,让我感受到了团结就是力量这句话的含义,大家相互学习共同进步。

这次实验后我了解到了自己的实力,以后我会更加努力学习,学习他人的长处,弥补自己的不足!

指导老师评语及得分:

 

签名:

年月日

//************************************

//**

//*function。

h*

//**

//************************************

#include

 

classconsumer;

classATM

//ATM取款机

public:

ATM(consumer&cn):

cnsm(cn)

voidwelcome();

//登陆界面

boolcheck_passwd(charn[],charpwd[]);

//核对密码

voidchange_passwd();

//修改密码

voidfetchmoney();

//取款

voidinformation();

//查询信息

voidexitATM();

//退出系统

voidfunctionshow();

//功能界面

voidlock();

//锁机

private:

inttimes;

//记录密码输入次数

consumer&cnsm;

};

classconsumer

//用户

public:

friendclassATM;

consumer(charName[],charNum[],

floatMoney,charPassword[]);

protected:

char*get_name();

//取得姓名

char*get_num();

//取得卡号

char*get_passwd();

//取得密码

floatget_money();

//取得余额

voidset_passwd(charpwd[]);

//设置密码

voidset_money(floatm);

//取钱

private:

charpasswd[8];

//用户密码

charname[20];

//用户姓名

charnum[20];

floatmoney;

};

 

//************************************

//**

//*consumer类的成员函数*

//**

//************************************

#include”function.h"

#include〈string.h>

consumer:

:

consumer(charName[],

charNum[],floatMoney,charPassword[])

{

strcpy(name,Name);

strcpy(num,Num);

money=Money;

strcpy(passwd,Password);

}

floatconsumer:

:

get_money()

{

returnmoney;

}

char*consumer:

:

get_name()

{

returnname;

char*consumer:

:

get_num()

returnnum;

char*consumer:

get_passwd()

returnpasswd;

voidconsumer:

set_money(floatm)

{

money—=m;

voidconsumer:

:

set_passwd(charpwd[])

{

strcpy(passwd,pwd);

 

//************************************

//**

//*ATM类的成员函数*

//**

//************************************

 

#include”function。

h”

#include

h>

#include〈stdlib。

h>

voidATM:

welcome()

times=0;

cout〈〈"$

欢迎使用若雪银行ATM自动取款机!

~!

"〈〈endl;

charpwd[8],num[20],ch;

inti=0;

do

i=0;

cout<

”;

do

cin.get(ch);

num[i++]=ch;

}while(ch!

='\n’);

num[i-1]=’\0';

i=0;

cout<<”请输入密码:

";

do

cin。

get(ch);

pwd[i++]=ch;

}while(ch!

=’\n’);

pwd[i—1]='\0’;

if(!

check_passwd(num,pwd))

{

cout〈〈"你输入的卡号或密码有误,

请重新输入”<〈endl;

times++;

else

functionshow();

}

}while(times<3);

lock();

boolATM:

check_passwd(charnum[],

charpwd[])

if(strcmp(num,cnsm.get_num())==0&&strcmp

(pwd,cnsm.get_passwd())==0)

returntrue;

else

returnfalse;

voidATM:

functionshow()

{

intn;

do

{

cout〈

"<

cout<〈"1)修改密码”<〈endl

<〈"2)取款”<〈endl

<<”3)查询余额”〈〈endl

<<"4)退出系统”〈

cout〈<”$〉\\”;

cin>>n;

while(n<1||n〉4)

cout<<”请输入正确的操作序号!

”〈〈endl;

cout〈<"$>\\";

cin>>n;

}

switch(n)

{

case1:

change_passwd();

break;

case2:

fetchmoney();

break;

case3:

information();

break;

case4:

exitATM();

break;

}

}while(true);

voidATM:

change_passwd()

{

charpwd[8],repwd[8];

times=0;

do

{

cout<

";

cin〉〉pwd;

if(!

check_passwd(cnsm。

get_num(),pwd))

times++;

else

break;

}while(times〈3);

if(times==3)

lock();

intt=0;

do

{

cout<<"请输入新密码:

";

cin>〉pwd;

cout<〈”请再输入一次新密码:

";

cin>〉repwd;

if((t=strcmp(pwd,repwd))!

=0)

cout〈<”你输入的两次密码不一样,

请重新输入!

”<〈endl;

}while(t!

=0);

cnsm。

set_passwd(pwd);

cout〈<"密码修改成功,请牢记!

”〈

}

voidATM:

fetchmoney()

{

floatm;

charch;

do

{

cout〈〈endl<〈”你要取多少钱:

〈<”\n___FCKpd___1gt;\\"〈〈endl;

cin>〉m;

while(m〈=0)

{

cout〈〈"请输入正确的数字!

”<

cout<〈”$>\\”;

cin>〉m;

if(cnsm。

get_money()—m<0)

{

cout<<"对不起,你的余额不足!

else

cout<〈endl〈〈"操作成功,请收好钱!

〈〈endl;

cnsm。

set_money(m);

}

cout<〈”是否要继续该项操作:

(Y/N)”

<〈endl;

cout<<"$>\\";

cin〉〉ch;

while(ch!

=’n’&&ch!

=’N'&&ch!

='Y’&&ch!

=’y’)

{

cout〈<"$>\\”;

cin〉>ch;

}while(ch=='y'||ch==’Y’);

voidATM:

:

information()

{

cout〈〈”**********************************”<

cout<<"*”〈〈endl;

cout<<"*用户姓名:

”〈〈cnsm。

get_name()<〈endl;

cout〈〈”*卡号:

"<

get_num()<〈endl;

cout<〈”*余额:

”〈

cout〈〈”**********************************”<

voidATM:

:

lock()

cout〈〈endl〈〈"对不起,由于你的操作有误,

你的卡已经被没收!

”〈〈endl;

exit

(1);

voidATM:

:

exitATM()

{

cout<

欢迎下次光临!

"<

cout〈<”请取卡……"<

exit(0);

}

 

//************************************

//**

//*ATM.cpp*

//**

//************************************

#include

h〉

#include"function.h"

voidmain()

{

consumerc1("jim”,”12345",5200.3f,”123”);

//先构造一个用户

ATMatm(c1);

atm。

welcome();

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 自然科学 > 生物学

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1