- 博客(0)
- 资源 (6)
- 收藏
- 关注
/数据结构课程设计 飞机场模拟 初始化及主程序
/数据结构课程设计--飞机场模拟--初始化及主程序
//舞动青春--张佳贵
//2009年6月
#include
#include
#include"Extended_queue.h"
#include"Random.h"
#include"Runway.h"
#include"Plane.h"
using namespace std;
void run_idle(int time)
{
cout<<" "<<time<<":Runway is idle."<<endl;
}
//初始化程序
void initialize(int &end_time,int &queue_limit,double &arrival_rate,double &departure_rate){
cout<<"This is program simulates an airport with only one runway."<<endl
<<"One plane can land or depart in each unit of time."<<endl;
cout<<"Up to what number of planes can be waiting to land"
<<" or take off at any time?"<>queue_limit; //输入用户期望的跑道最大容纳量
cout<<"How many uints of time will the simulation run?"<>end_time;
bool acceptable;
do {
cout<<"Expected number of arrivals per uint time?"<>arrival_rate;
cout<<"Expected number of departures per uint time?"<>departure_rate;
if(arrival_rate<0.0||departure_rate<0.0)
cerr<<"These rates must be nonnegative."<1.0)
cerr<<"Safety Warning:This airport will become saturated."<<endl;
}while(!acceptable);
}
//主程序
int main() {
int end_time;
int queue_limit;
int flight_number=0;
double arrival_rate;
double departure_rate;
initialize(end_time,queue_limit,arrival_rate,departure_rate); //初始化跑道信息
Random variable; //定义随机数变量
Runway small_airport(queue_limit);
//判断当前发出请求的飞机是否应该被接受或拒绝
for(int current_time=0;current_time<end_time;current_time++){
int number_arrivals=variable.poisson(arrival_rate);
for(int i=0;i<number_arrivals;i++){
Plane current_plane(flight_number++,current_time,arriving);
if(small_airport.can_land(current_plane)!=success)
current_plane.refuse();
}
int number_departures=variable.poisson(departure_rate);
for(int j=0;j<number_departures;j++){
Plane current_plane(fligh
2011-04-26
源代码 C++ 银行系统
#ifndef header_account
#define header_account
//------------------------
#include<iostream.h>
//-------------------
class Account{
private:
//账号(唯一)、姓名、余额、身份证号码、单位、电话号码、地址
int acntNumber;
char name[10];
double balance;
public:
Account(int =0,char*=" ",double =0.0);
int getAcntNumber()const;
void setAcntNumber(int);
char getName()const;
void setName(char* nameString);
double getBalan()const;
void setBalan(double);
};
///*
Account::Account(int acntNumber,char name,double balance){
//int setAcntNumber(acntNumber);
//char setName(name);
//double setBalan(balance);
}
//*/
int Account::getAcntNumber()const{return acntNumber;}
void Account::setAcntNumber(int acntNumberValue){
acntNumber=acntNumberValue;
}
//正在申请一个账户
string Account::getName()const{return name;}
void Account::setName(char* nameString){
const char*nameValue=nameString.data();
int length=strlen(nameValue);
strcpy(name,nameValue,length);
name[length]=’\0’;
}
//正在申请用户名空间
double Account::getBalan()const {return balance;}
void Account::setBalan(double balanceValue){
balance=balanceValue;
}
//申请存款空间
#endif
//////////////////////////////////////////////////////////////////
#ifndef header_savings
#define header_savings
//------------------------
#include<iostream.h>
#include<fstream.h>
#include<stdlib.h>
#include"account.h"
//--------------------
enum choices{print=1,update,New,Delete,end};
//--------------------------
class Savings{
private:
Account client;
public:
//开户、销户、存款、取款、转账、查询,
void createFile();
int enterChoice();
void printRecord(fstream&);
void updateRecord(fstream&);
void newRecord(fstream&);
void deleteRecord(fstream&);
void outputLine(ostream&,const &Account);//查询某一个用户
int getAccount(const char*const);
};
//---------------------------------------
int Savings::enterChoice(){
cout<<"输入你的选择"<<endl<<"1是存款"<<endl<<"2是更新"
<<endl<<"3是增加一用户"<<endl<<"4是销户"<<endl
<<"5是操作有误,退出系统"<<endl;
int menuChoice;
cin>>menuChoice;
return menuChoice;
}/**/
//---------------------------------------------------------------------------
void Savings::printRecord(fstream &readFormFile){//创建系统文件
ofstrenm outPrintFile("account.txt",ios::out);
//如果创建系统文件失败,退出系统
if(!outPrintFile){
cerr<<"系统文件创建失败,退出系统"<<endl;exit(1);
}
outPrintFile<<left<<setw(10)<<"账号"<<setw(10)<<"姓名"<<setw(10)<<"存款"<<endl;
readFromFile.seekg(0);//设置文件指针到开始位置
Account client;
readFormFile.read(reinterpret_cast<char*>((&client),sizeof(Account));
while(!readFromFile.eof()){
if(client.getAcntNumber()!=0)
outputLine(outPrintFile,client);//写一用户信息
readFormFile.read(reinterpret_cast<char*>((&client),sizeof(Account));//继续
}
}
//---------------------------------------------------------------------------
void Savings::updateRecord(fstream &updateFile){//更新余额
int acntNumber=getAccount("输入更新账户");//获取更新的账号
updateFile.seekg((acntNumber-1)*sizeof(Account));//移动指针到正确位置
Account client;//读取信息
updateFile.read(reinterpret_cast<char*>(&client),sizeof(Account));
if(client.getAcntNumber()!=0){//更新信息
outputLine(cout,client);//提示用户指定
cout<<"是存款还是取款y/n"<<endl;
char ch2;
if(cin==’y’||cin==’Y’){
cout<<"存款"<<endl;
double transaction;cin>>transaction;
double acntNumber()=client.getBalance();//更新余额
client.setBalance(acntNumber+transaction);
}
else
cout<<"取款"<<endl;
double transaction;cin>>transaction;
double acntNumber()=client.getBalance();//更新余额
client.setBalance(acntNumber-transaction);
outputLine(cout,client);
updateFile.seekp((acntNumber-1)*sizeof(Account));
updateFile.write(reinterpret_cast<const char *>(&client),sizeof(Account));//用新的信息覆盖
}
}/**/
//---------------------------------------------------------------------------
void Savings::newRecord(fstream &intsertInFile){//创建一个用户
int acntNumber=getAccount("输入一个用户");
insertInFile.read(reinterpret_cast<char*>(&client),sizeof(Account));
if(client.setAcntNumber()==0)//如没有记录,创建记
{
char name[10];
double balance;
cout<<"输入你的名字,户头存款"<<endl;
cin>>setw(10)>>name>>balance;
client.setAcntNumber(acntNumber);
client.setBalan(balance);
client.setName(name);
insertInFile.seekp((acntNumber-1)*sizeof(Account));
insertInFile.write(reinterpret_cast<const char*>(&client),sizeof(Account));
}
}
//---------------------------------------------------------------------------
void Savings::deleteRecord(fstream& deleteFromFile){
2011-04-24
企业人事管理系统需求规格说明书
人事管理是现代企业管理工作不可缺少的一部分,是推动企业走向科学化、规范化的必要条件。员工是企业生存的主要元素,员工的增减、变动将直接影响到企业的整体运作。企业员工越多、分工越细、联系越密,所要做的统计工作就越多,人事管理的难度就越大。随着企业的不断壮大,自动化的企业人事管理系统就显得非常必要。
一、任务概述
1.目标
根据企业对人事管理的要求,制定企业人事管理系统目标如下:
a.操作简单方便、界面简洁美观。
b.在查看员工信息时,可以对当前员工的家庭情况和培训情况进行添加、修改、删除操作。
c.方便快捷的全方位数据查询。
d.按照指定的条件对员工进行统计。
e.可以将员工信息以表格的形式插入到Word文档中。
f.实现数据库的备份、还原及清空操作。
g.由于该系统的使用对象较多,要有较好的权限管理。
h.能够在当前运行的系统中重新进行登录。
i.系统运行稳定、安全可靠。
2.运行环境
系统开发平台 Microsoft Visual Studio 2005
系统开发语言 C#
数据库管理系统软件 Microsoft SQL Server 2005
运行平台 Windows XP(SP2)
Windows 2000(SP4)
Windows Server 2003(SP1)
运行环境 Microsoft .NET Framework SDK v2.0
分辨率 最佳效果1024×768像素
3.条件和限制
一个更为完善的企业人事管理系统,应提供更为便捷与强大的信息查询功能,如相应的网络操作及服务,由于开发时间和计算机数量有限,该系统并未提供这一功能。对信息的保护手段仅限于设置用户级别,以及提供数据文件的备份,比较简单,不能防止恶意的破坏,安全性能有待进一步完善。
4.数据库描述
数据库是数据管理的最新技术,是计算机科学的重要分支。近几年来,数据库管理系统已从专用的应用程序包发展成为通用系统软件。 由于数据库具有数据结构化、最低冗余度、较高的程序与数据独立性、易于扩充、易于编制应用程序等优点,较大的信息系统都是建立在数据库设计之上的。
由于用到的数据表格多,另外考虑到实际情况,企业人事基本信息的变动,还有员工信息的多少的变化,我们选用SQL Server作为数据库开发,而不用Access,主要是因为 Access 存放的记录,在实际运用中不适合此系统;而 SQL Server 是一种常用的关系数据库,能存放和读取大量的数据,管理众多并发的用户,故选用SQL Server数据库。
二、二层的细化数据流图
1.基础信息管理数据流图
………………
2011-04-24
软件设计师真题以及详细解析
包含了真题以及详细解析 考试大纲
样例:
试题(1)、(2)
在计算机中,最适合进行数字加减运算的数字编码是(1) ,最适合表示浮点数
阶码的数字编码是(2) 。
(1)A.原码B.反码C.补码D.移码
(2)A.原码B.反码C.补码D.移码
试题(1)、(2)分析
在计算机的CPU 中,通常只设置硬件加法器。只有补码能够将减法转化为加法,故
用硬件加法器可以较方便地进行数字加减法。
由于正数的移码大于负数的移码,利用这一特点,移码被广泛用来表示浮点数阶码
的数字编码,这可以用比较阶码的大小来实现真值大小的比较。
参考答案
(1)C (2)D
2011-04-13
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人