C/C++模拟投票小程序[2023-09-04]

C/C++模拟投票小程序[2023-09-04]

程序设计题一: 模拟投票小程序

1 问题描述
网络上经常出现问卷调查、投票等小程序,请设计完成一个投票系统,实现三个角色: 选民、备选对象、管理员,实现功能包括: 参加投票、管理投票过程、结果查询与公布等。
2 功能要求
代码要能提供以下几个基本功能。
(1)每个进入系统的人员需注册,管理员不用。
(2)提供菜单选项,设置用户角色–管理员、注册用户、参选对象。
(3)管理员可以审核参选对象,可以查看用户注册信息 (用户名、手机号、投票次数 等),可以修改投票次数的限定、选举时间限定;发布、统计投票结果等。
(4)注册用户可以查询参选对象的信息和当前投票状态(参选对象、票数、排名、百分比等)
(5)对用户的输入进行一定的正确性检查。(6)手机一天投票数量限制。比如: 同一个手机号码一天只能投一次,或者一天只能给一个参选者投一次票。
3 其他要求
(1)界面美观,交互方便。
(2)注释详细:每个变量都要求有注释说明用途,函数有注释说明功能,对参数、返回值也要以注释的形式说明用途:关键的语句段要求有注释解释。
(3)程序的层次清晰,可读性强。
(4)变量、函数命名符合规范。
(5)如有可能,可使用MFC 等开发工具,实现彩色或图形操作界面。

4 开发环境
可以选择TC2.0、TC3.0、VC++6.0等开发环境,或经老师同意选择自己熟悉的开发工具与平台。

源码

https://pan.baidu.com/s/1SHX3aW20HP_98kAK11GSJg?pwd=0000

程序设计题:ATM仿真软件

1 系统的基本功能
ATM的管理系统是银行流程业务中,十分重要且必备的环节之一。在银行业务流程中,有着承上启下、起承转合的作用。本课题可以帮助人们更加熟悉ATM的各类操作,从而方便生活中的使用。其基本功能如下:密码验证机制;吞锁卡机制;存取款功能;账户查询功能;转账功能等。
2 要求及提示
2.1 基本要求
要能提供以下几个基本功能:
(1)系统内的相关信息文件由程序设计人员预先从键盘上录入,文件中的数据记录不得少于20条;
(2)设计并实现系统的相关界面,使用分级菜单提高人机交互性;
(3)登录系统必须输入正确的卡号和密码,输入错误时提示用户,连续输入错误3次则显示锁卡,用户登录后可以修改自己的密码;
(4)取款功能:输入取款金额,核对。若超出账户余额,则输出“余额不足”则,输出对应金额的现金,并提示用户是否打印回单,退卡,返回界面;
(5)存款功能:存入现金,核对金额,存入账户,提示用户是否打印回单,返回主界面;
(6)查询账户信息,包括用户名、余额信息,以及各种操作的历史记录;
(7)转账模块,提示用户输入正确的账号,检查转账条件是否满足,并完成转账操作;
(8)退出终端系统,提示用户保存好银行卡。
2.2 选做要求
在查询界面中提供以下功能:利用账户的历史余额数据,进行账户余额的预测分析。
2.3 提示
(1)用户的卡号和密码必须以密文形式保存在文件中,所以在验证账号信息的过程中必须包含加密和解密的过程。
(1)ATM仿真系统功能框图如下:

图1 ATM仿真软件功能框图

(2)结构体
根据用户信息,设计每个用户的结构体如下:

struct Account{													//账号信息
	char ID[20];													//卡号
	char name[20];												//姓名
	int password[6];												//密码
	double money;												//账户余额
}
struct Statement{													//单笔流水信息
	char ID[20];													//编号
	char accountID[20];											//对应账号
	char time[20];												//交易时间
	int type;														//交易类型
	double money;												//交易数额
	char toAccunt[20];											//对方账号
}

2.4 其他要求
(1)在上述功能要求的基础上,为了提高成绩,可以添加一些额外的功能。
(2)变量、方法命名符合规范。
(3)注释详细:每个变量都要求有注释说明用途;方法有注释说明功能,对参数、返回值也要以注释的形式说明用途;关键的语句段要求有注释解释。
(4)程序的层次清晰,可读性强。
3 开发环境
开发工具可以选择VC++ 6.0或者Dev C++等C++开发工具。

源码

https://pan.baidu.com/s/1SHX3aW20HP_98kAK11GSJg?pwd=0000

程序设计题:背单词

1 问题描述
“背单词—个性化背词”是背诵英语单词的软件。用户可以根据自己的需求导入需背诵的词库,并可以编辑自己的词库。背单词时有两种模式供选择:系统可以给出中文提示,用户输入对应的单词,也可输出单词让用户输入中文意思。系统判定词义是否正确。如果正确成绩加十分,如果不正确给出提示并要求用户重新输入。
2 功能要求
代码要能提供以下几个基本功能。
(1)用户登录:
·新用户可以注册,旧用户直接登录。
·可以只打卡不背词,直接退出界面。
(2)单词本:
·存储单词基本信息,英文、词性、中文解释等。
·选择词库维护编辑单词本信息,实现增加、修改、删除、补充(单词已有,补充新的释义)的功能。
(3)单词背诵及成绩统计:
·选择单词预览进行单词学习。
·单词背诵时有两种模式选择,选择题背诵及拼写单词背诵,而且支持多次背诵。
·答对加十分,答错扣十分,错词计入错题本。
·可查阅自己的总成绩,未达过关成绩可以选择错题重背直至完全掌握。
(4)单词复习:
·背诵完全正确时界面显示没有错题继续努力。
·有错题时可以选择错题重背加强记忆。
(5)退出系统时可以进行打卡,统计背诵单词天数。

选做要求:
(1)对用户的输入进行一定的正确性检查。
(2)能统计每一个单词出现频率及背诵正确率,供以后出题时提供依据。
(3)能设置提醒功能,激励大家坚持下去。
3 其他要求
(1)界面美观,交互方便。
(2)注释详细:每个变量都要求有注释说明用途;函数有注释说明功能,对参数、返回值也要以注释的形式说明用途;关键的语句段要求有注释解释。
(3)程序的层次清晰,可读性强。
(4)变量、函数命名符合规范。
(5)如有可能,可使用MFC 等开发工具,实现彩色或图形操作界面。
4 开发环境
可以选择TC2.0、TC3.0、VC++6.0等开发环境,或者与老师讨论,选择自己熟悉的开发工具与平台。

源码

https://pan.baidu.com/s/1SHX3aW20HP_98kAK11GSJg?pwd=0000

程序设计题:电信优惠套餐推荐系统的设计与实现

1 问题描述
电信公司常常推出各种类型的优惠套餐,体现上上网流量、语音通话、资费上的各种优惠。要求设计一个优惠套餐推荐系统,将各种优惠套餐的情况存于文件中,系统提供办理业务的用户输入功能,主是提供自己希望得到的优惠,系统根据用户需求和已有套餐自动去匹配,挑选出最合适的套餐推荐给用户。
2 功能要求
系统中主要有管理员和普通用户两种身份的用户,二者各具有不同的功能:
管理员:
(1)以密码登录系统(密码用*显示,不得显示输入的字符)
(2)管理优惠套餐(同学自己参考电信移动公司的优惠政策)的具体信息,主要包括:优惠套餐编号(主关键字,唯一)月资费、通话时长、4G流量、宽带带宽等。管理员可以增加、删除、修改具体优惠套餐的信息
(3)可以管理并查询所有用户所享受的优惠套餐政策
普通用户:
(1) 逐条输入(或根据选项来选择)自己希望享受的各优惠条件,具体到每月通话时常、4G流量需求,是否需要宽带等;
(2)在系统给出推荐的优惠套餐之后,进行确认
(3)可以随时查询本人的优惠套餐具体信息,可根据需要提出变更需求,系统再为其重新计算和推荐。
选做要求:
(1) 管理员可以统计各优惠政策的意向客户人数,为下一步调整优惠政策提供依据。
(2)如果系统无法匹配出完全符合用户需求的优惠政策的情况下,提供给用户一些接近用户需求的优惠套餐推荐,供用户从中进行选择。
(3)同学可以自拟扩展功能并实现。
3 其他要求
(1)界面美观,交互方便。
(2)注释详细:每个变量都要求有注释说明用途;函数有注释说明功能,对参数、返回值也要以注释的形式说明用途;关键的语句段要求有注释解释。
(3)程序的层次清晰,可读性强。
(4)变量、函数命名符合规范。
(5)如有可能,可使用MFC 等开发工具,实现彩色或图形操作界面。
4 开发环境
可以选择TC2.0、TC3.0、VC++6.0,DEV_C++等开发环境,或者与老师讨论,选择自己熟悉的开发工具与平台。

源码

https://pan.baidu.com/s/1SHX3aW20HP_98kAK11GSJg?pwd=0000

程序设计题:多媒体文件管理及检索系统

1 问题描述
建立一个多媒体文件信息管理系统,包括对各种多媒体音视频文件的管理。该系统具有排序、查找、计算、显示等功能。通过此课题,熟练掌握文件、数组、指针的各种操作等。其中,多媒体文件信息应包括:音视频文件的文件名、文件类型、文件大小、导演、演员、浏览次数、发行日期、所获奖项等。

2 功能要求
代码要能提供以下几个基本功能。
(1) 要求进入系统需要输入口令验证。
(2) 按照文件类型分类,并可按照发行日期从近到显示文件信息。
(3) 实现加入新文件信息和删除无用文件信息的更新。
(4) 将所有多媒体文件信息存为文件。

选做要求:
(1) 按照导演或者主要演员查询对应的文件信息,并计算某一导演或演员参与的文件总数。
(2) 可根据用户设定做出推荐,比如根据用户所需类别、文件类型和浏览次数等设定综合做出一定推荐。
3 其他要求
(1)界面美观,交互方便。
(2)注释详细:每个变量都要求有注释说明用途;函数有注释说明功能,对参数、返回值也要以注释的形式说明用途;关键的语句段要求有注释解释。
(3)程序的层次清晰,可读性强。
(4)变量、函数命名符合规范。
(5)如有可能,可使用MFC 等开发工具,实现彩色或图形操作界面。
4 开发环境
可以选择TC2.0、TC3.0、VC++6.0等开发环境,或者与老师讨论,选择自己熟悉的开发工具与平台。

源码

https://pan.baidu.com/s/1SHX3aW20HP_98kAK11GSJg?pwd=0000

程序设计题: 计算24点游戏

1 问题描述
设计一个带有记分功能的24点游戏(简易版本,只使用1-10之间的数)。能够进行提供四个随机数进行出题,并判断能否算出24点,对读取玩家输入的表达式,并计算结果是否正确。

2 功能要求
代码要能提供以下几个基本功能。
(1) 设计相应的游戏积分功能,以给出题目到游戏者输入结果之间的时间记分。超过一定的时间未给出答案则取消该轮,每轮3次,记总分(3次分相加)前三名。
(2) 游戏参与者进入游戏必须先输入名称,游戏开始,程序随机自动生成四张牌(以1-10之间的数值代替),游戏者要求尽快给出表达式,只能使用 + - × % 运算。可以使用(),不涉及小数运算。比如机器给出四个数为3、3、6、2,游戏者输入表达式:(3+3-2)×6,程序检查运算成功,根据要求3计算时间。如果给出的四个数不能得出24,如:1、2、1、3,那么游戏者必须输入NO,要求计算机进入下一题,但此次如果是正确判断一样记分。如此玩3次,计算总分。任何一次在要求时间内不能给出表达式或NO,那么游戏此轮结束。
(3) 游戏使用出牌到要求给出结果之间的时间限制作为游戏的难度级别,可自行设置。
(4) 设计四个数能否计算得出24的算法是关键,(用于判断游戏者输入NO的判断是否正确,判断错误就结束此轮游戏)。

选做要求:
(1) 设计游戏进入界面。提供游戏难度设置,高手总分查询和进入、退出游戏选项。

3 其他要求
(1)界面美观,交互方便。
(2)注释详细:每个变量都要求有注释说明用途;函数有注释说明功能,对参数、返回值也要以注释的形式说明用途;关键的语句段要求有注释解释。
(3)程序的层次清晰,可读性强。
(4)变量、函数命名符合规范。
(5)如有可能,可使用MFC 等开发工具,实现彩色或图形操作界面。
4 开发环境
可以选择TC2.0、TC3.0、VC++6.0等开发环境,或者与老师讨论,选择自己熟悉的开发工具与平台。

程序设计题:公交路线自动化选择系统实现

1 问题描述
要求编写一个程序,实现公交路线的自动化选择。要求如下:
(1)预先设置若干条公交路线。
(2)根据用户输入起点和终点自动给出相应的路线,可以有几种选择,例如站数最少的,换乘最少的等。
(3)如果输入的起点和终点无法匹配到相应的公交路线,要给出相应的提示。
2 功能要求
代码要能提供以下几个基本功能。
(1)提供菜单选项,实现线路查询功能,即输入任意两个站点,点击查询按钮,反馈结果为这两个公交站点之间的所有可达线路。
(2)提供菜单选项,让用户进入系统,根据选择完成路线管理,修改,更新,并且已经录入的路线要保存到文件,无需重复录入。
(3)提供菜单选项,实现车次查询功能,即输入任一需要查询的公交线路(如D1),点击查询按钮,反馈结果为这条公交线路的起点到终点之间的所有公交站点。
选做要求:
(1)对用户的属性可以进行区分,分为普通用户和管理员,分别进入不同的界面。
(2)线路查询时如果没有直达路线就显示最优换乘路线。
(3)路线录入时增加每个站点之间的预估时间,在路线选择的同时给出相应路线的预估时间,包括提示首末班车时间。
3 其他要求
(1)界面美观,交互方便。
(2)注释详细:每个变量都要求有注释说明用途;函数有注释说明功能,对参数、返回值也要以注释的形式说明用途;关键的语句段要求有注释解释。
(3)程序的层次清晰,可读性强。
(4)变量、函数命名符合规范。
(5)如有可能,可使用MFC 等开发工具,实现彩色或图形操作界面。
4 开发环境
可以选择TC2.0、TC3.0、VC++6.0等开发环境,或者与老师讨论,选择自己熟悉的开发工具与平台。

程序设计题:红楼梦人物分析系统

1 系统的基本功能
《红楼梦》是中国古典四大名著之一,其中人物关系错综复杂、耐人寻味。本课题要求编写一个程序,实现对《红楼梦》中的主要人物进行分析,包括出场次数、人物的亲密度等等。
人物的亲密度可以通过计算在同一篇幅中共同出现的频率进行计算。
2 要求及提示
2.1 基本要求
要能提供以下几个基本功能:
(1)系统内小说主体和小说主要人物请自行从互联网上进行搜索下载,并保存在文本文件中,待分析人物由用户从键盘上输入;
(2)设计并实现系统的相关界面;
(3)分析数据时读取保存的文本文件进行分析;
(4)可以按照要求进行数据排序,包括:按出场次数从多到少排序、按篇幅跨度从大到小排序、按与其他人物的关系密度从高到低排序等等;
(5)可以根据用户输入单独查询某位主人公的分析结果;
(6)输入查询人物的分析结果,包括:出场次数、篇幅跨度、与其他人物的关系密度。
2.2 选做要求
(1)保存功能:能够将用户看到的结果按其需求保存到指定位置或覆盖已有文本文件。
(2)异常处理与读取功能:在读取默认位置的文件出错时,能够按用户选择读取新的小说文本文件,增加程序的健壮性。

2.3 提示
(1)因为小说中的人物存在别名,实现过程中可以用正则表达式来在文本中寻找。
(2)程序的总体框图如下:

图1红楼梦人物分析系统总体框图
(3)数据结构:
依据选定的小说主要人物,定义人物的结构体,设计内容如下:

struct Role{														//人物信息
	char ID[20];													//编号
	char name[20];												//姓名
	int times;													//出现次数
	int freq;														//账户频率
}

2.4 其他要求
(1)在上述功能要求的基础上,为了提高成绩,可以添加一些额外的功能。
(2)变量、方法命名符合规范。
(3)注释详细:每个变量都要求有注释说明用途;方法有注释说明功能,对参数、返回值也要以注释的形式说明用途;关键的语句段要求有注释解释。
(4)程序的层次清晰,可读性强。
3 开发环境
可以选择TC2.0、TC3.0、VC++6.0等开发环境,或者与老师讨论,选择自己熟悉的开发工具与平台。

源码

https://pan.baidu.com/s/1SHX3aW20HP_98kAK11GSJg?pwd=0000

程序设计题:基于朋友圈的商品推荐

【课题内容和要求】
模拟基于朋友圈的商品推荐,可以用于任何电商,如淘宝、京东等。
假设目前用户有 100 人,每人均有自己的朋友圈,且购买过若干商品(50 种)。实现基于朋友圈的商品推荐,要求根据朋友们购买过的商品,为用户推荐其可能感兴趣的商品。
具有用户和商品添加、删除、查找和排序,以及商品推荐等功能。通过此课题,熟练掌握文件、数组、指针的各种操作,以及一些算法思想的应用。
(1)管理信息应包括:
用户信息(用户名、密码、朋友圈、所购商品等)、商品信息(商品名和购买次数等)和朋友圈
(2)需要实现的功能

  1. 用户输入用户名和密码完成注册和登录
  2. 实现相关信息的建立,包括录入、修改和删除
  3. 对用户和商品进行查询
  4. 对商品进行排序
  5. 根据朋友购买的信息,为用户推荐商品
  6. 将所有相关信息内容存为文件
    (3)推荐算法:统计朋友们购买的所有商品,累加每种商品的数量并排序。当然,如果有其他你认为更优的方法更好!
    可以建立二维数组保存用户与用户朋友圈信息,以及用户与商品之间购买信息。
    【程序设计的开发环境】
    采用C或C++实现,VC++6.0

源码

https://pan.baidu.com/s/1SHX3aW20HP_98kAK11GSJg?pwd=0000

程序设计题:基于数据分析的小区电量扩容推荐程序

1 问题描述
老旧小区的改造是一项重大的民生工程,其中电网的改造又是头等大事。电力系统由于供电容量及工作人员人手的限制,不可能一次完成所有小区的扩容工作。因此,根据老小区已有用量的数据情况综合分析,挑选出急需增容的小区先行改造非常有必要,电力公司也同时会考虑到效益问题。
本课题需要提供抽样小区至少50户以上居民两年的用电情况进行数据的统计和分析,再根据电力公司拟增容的小区数据及效益需求,提供一份小区名单给电力公司作参考,或者提供一份按紧急程度排序的小区完整名单供参考。
2 功能要求
系统中主要有用电数据统计员和供电公司工作人员两种身份的用户,二者各具有不同的功能:
用电数据统计员:
(1)提供原始的数据,包括:老小区名称、家庭户名、用电的年月、当月峰时用电量、谷时用电量、每月电费(这一项是计算出来的)等。
(2)形成各类统计报表,如按家庭统计:每年的总用电量、电费;进而按小区来统计:小区每个月的总用电量、总电费、平均到每一户的平均电量和电费等。
(3)对小区数据进行各类排序:按分时用电量、按每月电费总量、按每一户的平均电费或电量等。
供电公司工作人员:
(1) 查询功能:可以进行各类查询功能,可以按小区或用户查询用电具体报表数据;
(2)需求提供:可以提供拟扩容小区的数量,或其他要求,如每月电费最低总额等。
(3)查看功能:系统根据需求列出优先扩容的小区建议名单供工作人员查看。
选做要求:
(1) 由于原始数据量比较大,可以通过调用随机函数产生模拟数据放入原始的数据文件中。
(2)除了参考用电量及电费之外,如果有特殊优先级要求可以自行设定加入程序中。
(3)同学可以自拟扩展功能并实现。
3 其他要求
(1)界面美观,交互方便,提供菜单选择。
(2)注释详细:每个变量都要求有注释说明用途;函数有注释说明功能,对参数、返回值也要以注释的形式说明用途;关键的语句段要求有注释解释。
(3)程序的层次清晰,可读性强。
(4)变量、函数命名符合规范。
4 开发环境
可以选择TC2.0、TC3.0、VC++6.0,DEV_C++等开发环境,或者与老师讨论,选择自己熟悉的开发工具与平台。

源码

https://pan.baidu.com/s/1SHX3aW20HP_98kAK11GSJg?pwd=0000

程序设计题:驾驶员理论课程模拟考试与学习系统

1 问题描述
要求编写一个程序,模拟驾驶员科目一的考试,要求具有良好的操作界面。管理员负责试题库的管理(编辑、删除、增加等)工作;随机生成考试试题;考试完后能给出评分;具有交通知识查询和学习功能。
2 功能要求
代码要能提供以下几个基本功能。
(1)提供管理员和用户菜单选项,分别进入不同权限界面;
(2)进入管理员界面需要密码验证,管理员界面负责试题库的管理(修改、查询、删除、增加)以及考试成绩的统计等;
(3)进入用户界面需要输入用户ID,界面菜单选项具有交通知识的查询、学习和测验等功能;
(4)用文件保存试题库。(每个试题包括题干、4个备选答案、标准答案)(4)
(5)试题录入:可随时增加试题到试题库中(4)
(6)试题抽取:每次从试题库中可以随机抽出N道题(N由键盘输入)(4)
(7)答题:用户可实现输入自己的答案(4)
(8)自动判卷:系统可根据用户答案与标准答案的对比实现判卷并给出成绩。
选做要求:
(1)自拟具有创新性的功能

3 其他要求
(1)界面美观,交互方便。
(2)注释详细:每个变量都要求有注释说明用途;函数有注释说明功能,对参数、返回值也要以注释的形式说明用途;关键的语句段要求有注释解释。
(3)程序的层次清晰,可读性强;注意试题的数据结构。
(4)变量、函数命名符合规范。
(5)如有可能,可使用MFC 等开发工具,实现彩色或图形操作界面。
4 开发环境
可以选择TC2.0、TC3.0、VC++6.0等开发环境,或者与老师讨论,选择自己熟悉的开发工具与平台。

程序设计题:简单音乐播放器系统

1 问题描述
编写一个简单音乐播放器软件,实现歌单文件的浏览,点歌,加入收藏夹等功能。歌单信息用文件存储,并在当前目录夹下面存放着对应的.wav文件。通过此课题,熟练掌握文件、数组、指针的各种操作,以及一些基本算法的应用。
2 功能要求
(1)歌单文件是由多条数据记录构成,其信息包括:
歌曲编号 歌名 歌手 专辑 ,例如
01 风吹麦浪 李健 《想念你》
02小苹果 筷子兄弟 《小苹果(新年R…》
03爱我中国 龙梅子/高安/祁隆 《一万个对不起》
。。。。。。
(2)数据保存形式:
系统形成的收藏夹要以文本或二进制文件保存。
(3)需要实现的功能
浏览功能:读取歌单文件,浏览歌曲信息
点歌功能:选择相应的歌名,播放该歌曲,并暂停(播放、停止播放可使用playSound和closeSound函数,具体使用方法请百度)
管理收藏夹功能:浏览歌单,根据歌单形成收藏夹文件,并能对文件进行增删修改查功能
(4)界面功能要求:

  1. 采用友好的字符界面,实现一个功能控制菜单。
  2. 每次操作都从该菜单选择,利用循环结构使得一次运行程序可进行多次操作。
    选做要求:
    (1)数据完整性保证。例如:歌单编号不得重复。
    (2)可以形成歌曲的上一首,下一首播放以及循环播放功能。具体请学生自己构思、设计。
    3 其他要求
    (1)界面美观,交互方便。
    (2)注释详细:每个变量都要求有注释说明用途;函数有注释说明功能,对参数、返回值也要以注释的形式说明用途;关键的语句段要求有注释解释。
    (3)程序的层次清晰,可读性强。
    (4)变量、函数命名符合规范。
    (5)如有可能,可使用MFC 等开发工具,实现彩色或图形操作界面。

4 开发环境
可以选择TC2.0、TC3.0、VC++6.0等开发环境,或者与老师讨论,选择自己熟悉的开发工具与平台。

*程序设计方法
(1)设计合适的数据结构(如结构数组、链表、对象数组等实现)。
(2)选择文件存储格式(文本或二进制)和文件名。
(3)采用自顶向下的设计方法,设计系统的总体模块组成和数据结构。设计主程序的流程图和界面。
(4)对于每项操作,设计一个函数(方法、子模块)进行实现,要明确函数原型。
(5)根据设计结果分步开发实现各模块,最后进行总体集成。

源码

https://pan.baidu.com/s/1SHX3aW20HP_98kAK11GSJg?pwd=0000

程序设计题:看谁排得快

1 问题描述
无论是考试成绩、工资收入、房价、股票涨幅等各种数据都需要进行排序的工作。对于不同的原始数据集,用不同的方法得到有序序列的速度是不一样的。
本课题要求对于用户提供的原始数据,或由系统产生的随机数据集进行排序,用尽可能多的方法实现,分析排序所需要的时间与初始序列之间的关系,从而得出一个结论性的建议,怎样的序列用怎样的方法可以排得最快。
2 功能要求
该程序需要具有以下功能:
(1)提供原始的数据:可以是用户提前输入到文件中的原始数据,或者系统调用随机函数产生的原始数据,或者是经过改造后的某种规律的原始数据集。
(2)用不同的方法进行由大到小或由小到大的排序。
(3)计算不同方法所需要使用的时间、排序的趟数等。
(4)将不同方法作用于不同数据集上的时间、排序趟数等运行结果形成一张报表文件存于后台以供分析
(5)分析报表数据,得出相应结论,显示出来以供参考。
(6)再任意提供测试数据集验证所给出的结论。

选做要求:
(1)分析报表数据形成的结论也再以表格形式存储到磁盘中作为永久性的参考文档。
(2)同学可以自拟扩展功能并实现。
3 其他要求
(1)界面美观,交互方便,提供菜单选择。
(2)注释详细:每个变量都要求有注释说明用途;函数有注释说明功能,对参数、返回值也要以注释的形式说明用途;关键的语句段要求有注释解释。
(3)程序的层次清晰,可读性强。
(4)变量、函数命名符合规范。
4 开发环境
可以选择TC2.0、TC3.0、VC++6.0,DEV_C++等开发环境,或者与老师讨论,选择自己熟悉的开发工具与平台。

源码

https://pan.baidu.com/s/1SHX3aW20HP_98kAK11GSJg?pwd=0000

模拟校园卡

1 问题描述
同学们都在机房做实验或自由上机,请根据自己实际使用情况编写一份模拟校园卡消费记录查询 系统 ,实现登录,计费,挂失,统计等相关功能。
2 功能要求
主要功能模块:
(1) 登录模块:同学根据自己设定的密码登录。三次错误则冻结账户。
(2) 管理员:
管理员以密码登录系统,提供以下功能:充值、挂失、重置学生密码
(3)学生
登录系统后,可以查询卡中余额,上机时间和地点。
可以统计自己上机时间,上机费用等;
参考的数据结构:

struct  card
{  char   ID[10];//卡号
char  name[10];//姓名
char  number[10];//学号
double recharge;//充值数额
double remain;//余额
int  state; //状态 ,正常、挂失、冻结
。。。。
}

(4)每个学生 对应一个文本文件B17010101.txt存放上机记录

struct record
{ char   ID[10];//卡号
char Date;//上机日期
char start_time;//开始时间
int  duration;//上机用时
char  state; //状态 ,是否上机中
char  address[10];//上机地点等
。。。。
}

上机记录表永久保存,用于事后查询和统计。
(5)提供菜单选择项,如角色选择、时间选择、功能选择等

选做要求:
(1)对用户的输入进行一定的正确性检查。
(2)管理员统计全部当天收入情况。
3 其他要求
(1)界面美观,交互方便。
(2)注释详细:每个变量都要求有注释说明用途;函数有注释说明功能,对参数、返回值也要以注释的形式说明用途;关键的语句段要求有注—释解释。
(3)程序的层次清晰,可读性强。
(4)变量、函数命名符合规范。
(5)如有可能,可使用MFC 等开发工具,实现彩色或图形操作界面。
4 开发环境
可以选择TC2.0、TC3.0、VC++6.0等开发环境,或者与老师讨论,选择自己熟悉的开发工具与平台。

源码

https://pan.baidu.com/s/1SHX3aW20HP_98kAK11GSJg?pwd=0000

程序设计题:排班系统

1 问题描述
某单位有7名保安人员,要求每个人在一星期中可以休息一天。每名保安可以自行选择自己想要的休息日,而对于休息日的选择既可以是某一天,也可以是某几天中的其中一天。当7名保安依次输入自己想要的休息日后,系统将会给出可能的值班安排。若系统给出的值班安排是0种,证明系统对7名保安的选择无法作出排班,需要重新输入。
要求打印轮休的所有可能方案。当然使每个人都满意,例如每人可以选择的休息日如下:
钱:星期一、星期六
孙:星期三、星期日
李:星期五
周:星期一、星期四、星期六
吴:星期二、星期五
陈:星期三、星期六、星期日
运行结果:

排班表: 1

星期四星期一星期五星期六星期三星期二星期日

排班表: 2

星期四星期一星期日星期五星期六星期二星期三

排班表: 3

星期四星期六星期三星期一星期五星期二星期日

排班表: 4

星期四星期六星期日星期五星期一星期二星期三

2 功能要求
代码要能提供以下几个基本功能。
(2)用户登录:
·新用户可以注册,旧用户直接登录。
(2)排班表:
·实现选择并存储排班表到排班表文件中。
·维护排班表文件基本信息,实现增加、修改、查询、删除排班表记录的功能。
·由于排班表的特殊性,注意增加、修改、删除时备注操作时间和操作人员信息。
·在系统无法排班时,判断周几没有值班人员。
选做要求:
(1)对用户的输入进行一定的正确性检查。
(2)增设特殊情况原因显示,例如:看病>办证>旅游 。
(3)当有某个保安请假一周,即剩下的6名保安有一个人一周要值两天时如何排班。
(4)可增设当天值班保安的工号、电话、地址等信息的显示
(5)升级为总排班人数在7-20,每天排班人数在2-6人,排班天数从7-30(根据系统取每月总天数),则应用范围更广,可应用于假期领导值班系统。
(6)增加打卡功能,则可以升级为考勤系统。
3 其他要求
(1)界面美观简洁,操作方便。
(2)编码规范,程序的层次清晰,主要的程序元素有注释,可读性强,程序运行稳定。
(3)变量、函数命名符合规范。
(4)如有可能,可使用MFC 等开发工具,实现彩色或图形操作界面。
4 开发环境
可以选择TC2.0、TC3.0、VC++6.0等开发环境,或者与老师讨论,选择自己熟悉的开发工具与平台。

程序设计题:上网计费系统模拟

1 问题描述
本程序模拟根据上网清单、客户资料等生成客户上网账单的过程,该系统主要功能包括促销信息、待购信息的新增、删除、修改、查找等。所有数据都要利用文件系统保存,以备系统下次运行时使用。通过此课题,熟练掌握文件、数组、指针的各种操作,以及一些基本算法的应用。
要求编写一个程序,实现对上网费用的计算。

2 功能要求
代码要能提供以下几个基本功能。
(1)文件管理和存储
1)用户资料文件,存放了用户名、用户帐号以及计费方式。格式如下:
Zhang Qiang 0001 0
Liu Hui 0002 2
Ke Lei 0003 4
其中,计费方式的含义如下:
0 无任何优惠活动,按每分钟 0.03元计算。
1 每月 50元包 30个小时,如上网时长在 30小时之内(含 30小时),应缴 50元,超过部分按每分钟 0.03元计算。
2 每月 95元包 60个小时,如上网时长在 60小时之内(含 60小时),应缴 95元,超过部分按每分钟 0.03元计算。
3 每月 200元包 150个小时,如上网时长在 150小时之内(含 150小时),应缴 200元,超过部分按每分钟 0.03元计算。
4 整包,每月缴 300元,上网时长不限。
2)上网记录文件,存放了所有用户的上网记录,内容包括用户帐号、上网起始时间和上网终止时间(格式:年月日小时分钟秒)。通常每个用户应有多条上网记录。该文件的格式如下:
0003 20151201170000 20151201193024
0001 20151202190006 20151202210000
0003 20151222211343 20151223012558
(2)功能要求
1)用户资料文件由程序设计人员预先从键盘上录入,用户资料文件中的数据记录不得少于 15条。
2)上网记录文件中的数据记录不得少于 150条,首先录入一些上网记录信息,必须有跨年、跨月份的上网记录。
3)用户资料文件及上网记录文件中的数据可随时增加或减少,程序不应进行限制或限定。
4)对上网费用进行计算。首先由操作人员输入年份和月,然后由程序计算该月份所有用户的上网费用并输出账单信息到指定文件夹,格式如下:
0001 Zhang Qiang 0 xxxx xxxxx
0002。。
计费时,对于每条上网记录,不足一分钟按一分钟计算。对于跨年或跨月份的记录,只计算发生在当月的费用。例如对于 2016年 1月 31日 15:00:00至 2016年 2月 1日 01:00:00的上网记录,在计算 2016年 1月的上网费时,仅计算 2016年 1月 31日 15:00:00至 2016年 2月 1日 00:00:00的费用;在计算 2016年 2月的上网费时,仅计算 2016年 2月 1日 00:00:00至 2016年 2月 1日 01:00:00的费用。处理时须考虑闰年的情况。
选做要求:
(1)随机生成一批上网记录信息,并判断是否正确,不正确的信息剔除。
(2)设计用户可能需要的报表,或者建议该系统中还需要采集哪些信息,以便更好的提供用户需要的信息。

3 其他要求
(1)界面美观,交互方便。
(2)注释详细:每个变量都要求有注释说明用途;函数有注释说明功能,对参数、返回值也要以注释的形式说明用途;关键的语句段要求有注释解释。
(3)程序的层次清晰,可读性强。
(4)变量、函数命名符合规范。
(5)如有可能,可使用MFC 等开发工具,实现彩色或图形操作界面。

4 开发环境
可以选择TC2.0、TC3.0、VC++6.0等开发环境,或者与老师讨论,选择自己熟悉的开发工具与平台。

*程序设计方法
(1)根据促销或购物的要求,设计合适的数据结构(如结构数组、链表、对象数组等实现)。
(2)选择文件存储格式(文本或二进制)和文件名。
(3)采用自顶向下的设计方法,设计系统的总体模块组成和数据结构。设计主程序的流程图和界面。
(4)对于每项操作,设计一个函数(方法、子模块)进行实现,要明确函数原型。
(5)根据设计结果分步开发实现各模块,最后进行总体集成。

程序设计题:神气的盒子

1 问题描述
手机等电子设备在使用过程中发出的信号可能干挠飞机驾驶舱与地面的正常通信,使飞机处于错误操作状态,严重影响飞行安全。《中华人民共和国民用航空法》也明文规定限制飞机上使用手机。2013年10月,美国联邦航空管理局发文,允许在飞机上使用“飞行模式”的个人电子设备,随后,很多国家也逐步开放在飞机上使用手机这一限制。
然而,实际情况可能更复杂。很多手机质量堪忧,即使设置成“飞行模式”也可能失效,对飞机飞行造成巨大的安全隐患。针对这一特殊情况,某航班进行大胆革新,制作了一批“神奇的盒子”。在乘客在乘坐飞机时,由该航班的乘务人员发给每个乘客,供乘客放置手机等电子产品。这些盒子上都有编号,只要将手机放进去,无论什么状态都能自动转为“安全飞行模式”,既能正常使用,也能保证飞行的安排。飞机着陆后,乘务人员将回收这些盒子。
请你设计一款方便乘务人员管理这些“神气的盒子”的软件,并对这一服务展开客户满意度调查,为航空公司进一步改善服务提供依据。
2 功能要求
这款软件应该包括以下几个基本功能:
(1)乘务人员的工号和密码验证。完成盒子发放和发回的工作可能由同一个或者不同的乘务人员完成,也可能出现中途换岗。不管哪位乘务员完成都要对自己的工作负责,因此在使用该软件时需要输入他(她)的工号以及密码。
(2)盒子发放。乘务人员在发放盒子的过程中,需要登记乘客的姓名、有效证件、登机牌,出发地和目的地,手机机型及手机号码,备用联系方式,以及盒子的编号等信息。可以考虑登机牌已经包含了乘客身份的有效信息。另外,乘客的“备用联系方式”必须要填写;身份证号码等信息输入有明显错误也应给出提示。
(3)信息保存。将登记的所有信息以文件形式保存。
(4)回收盒子。飞机着陆时,乘客可以将手机等电子设备取出,将空的盒子直接还给乘务员,也可以放在自己的位置上离开,由乘务人员来回收,乘务人员收到盒子需确认“已归还”。所有的信息也必须保存到文件中。
(5)找寻遗失手机的乘客。如果发生手机未取出就离开的乘客,乘务人员能根据盒子的号码找到该乘客的备用联系方式,以取得联系。
(6)满意度调查。针对某航班这一服务,对乘客进行满意度调查。在乘客离开时按键,满意为1,不满意为2,不表态为0。请统计乘客的满意度。
选做要求:
(1)如果乘客有什么其他意见和建议,请记录下来或由乘客填写,以便在以后的工作总结会议上进行总体展示。
(2)参加满意度调查的乘客,可参加抽奖活动。请设计一个抽奖过程,以手机号码为准。
(3)如果有什么更好的、更合理功能,请自加。
3 其他要求
(1)界面美观,交互方便,实用性强。
(2)注释详细:每个变量都要求有注释说明用途;函数有注释说明功能,对参数、返回值也要以注释的形式说明用途;关键的语句段要求有注释解释。
(3)程序的层次清晰,可读性强。
(4)变量、函数命名符合规范。
(5)如有可能,可使用MFC 等开发工具,实现彩色或图形操作界面。
4 开发环境
可以选择TC2.0、TC3.0、VC++6.0等开发环境,或者与老师讨论,选择自己熟悉的开发工具与平台。

程序设计题:食堂自动化管理系统

1 问题描述
编写一份简化的食堂自动化管理系统,实现学生就餐卡管理和菜品管理以及消费记录统计等相关功能。所有数据包括学生就餐卡信息,菜品信息等都要利用文件系统保存,以备系统下次运行时使用。通过此课题,熟练掌握文件、数组、指针的各种操作,以及一些基本算法的应用。
2 功能要求
(1)学生就餐卡和菜品数据是由多条数据记录构成,其信息包括:
学生就餐卡:卡号,姓名,余额,状态(正常和挂失。)
食堂菜品数据:编号 名称 金额 消费次数
(2)数据保存形式:
所有就餐卡信息,菜品信息数据要以文本或二进制文件保存。
(3)需要实现的功能
代码要能提供以下两个基本模块。
管理员模块:
管理员以密码登录系统,可以完成以下功能
A. 注册学生就餐卡
B.就餐卡的充值挂失模块
C.食堂菜单管理功能,包括对菜单的增删修改查等功能。
D.统计功能:统计菜品销售情况(销售排行),以及学生卡的使用情况(选做)
学生模块
以就餐卡号登录系统(说明:卡处于挂失,则拒绝登录。)
可以查询卡中余额。
可以查询本卡的消费记录(选做)
可以浏览菜品并按照金额购买
(4)界面功能要求:

  1. 采用友好的字符界面,实现一个功能控制菜单。
  2. 每次操作都从该菜单选择,利用循环结构使得一次运行程序可进行多次操作。
    选做要求:
    (1)数据完整性保证。例如:就餐卡号和菜单编号不得重复。
    (2)学生每次消费可以自动生成消费记录(卡号,购买时间,购买菜品编号,购买金额)。
    该消费记录表永久保存,用于事后查询和统计。具体请学生自己构思、设计。
    3 其他要求
    (1)界面美观,交互方便。
    (2)注释详细:每个变量都要求有注释说明用途;函数有注释说明功能,对参数、返回值也要以注释的形式说明用途;关键的语句段要求有注释解释。
    (3)程序的层次清晰,可读性强。
    (4)变量、函数命名符合规范。
    (5)如有可能,可使用MFC 等开发工具,实现彩色或图形操作界面。

4 开发环境
可以选择TC2.0、TC3.0、VC++6.0等开发环境,或者与老师讨论,选择自己熟悉的开发工具与平台。

*程序设计方法
(1)根据食堂自动化数据管理要求,设计合适的数据结构(如结构数组、链表、对象数组等实现)。
(2)选择文件存储格式(文本或二进制)和文件名。
(3)采用自顶向下的设计方法,设计系统的总体模块组成和数据结构。设计主程序的流程图和界面。
(4)对于每项操作,设计一个函数(方法、子模块)进行实现,要明确函数原型。
(5)根据设计结果分步开发实现各模块,最后进行总体集成。

程序设计题:手机电话薄

1 问题描述
现代人用手机维持人与人之间亲密的关系,对手机通讯信息的管理尤其重要。用C设计出模拟手机通信录管理系统,实现对手机中的通讯录进行管理。
2 功能要求
代码要能提供以下几个基本功能。
(1)查看功能:选择此功能时,列出下列三类选择。
A 办公类 B 个人类 C 商务类 ,当选中某类时,显示出此类所有数据中的姓名和电话号码)
(2)增加功能:能录入新数据(一组数据包括:姓名、电话号码、分类(可选项有:A 办公类 B 个人类 C 商务类)、电子邮件、QQ号码、备注)。例如

杨春   13589664454  商务类  chuny@126.com  8888888  备注:大学同学

当录入了重复的姓名和电话号码时,则提示数据录入重复并取消录入;录入的新数据能按递增的顺序自动进行条目编号(并保存到文件中)。
(3)修改功能:选中某个人的姓名时,可对此人的相应数据进行修改
(4)查询功能:输入姓名,则查询出此人的电话号码。
(5)删除功能:选中某个人的姓名时,可对此人的相应数据进行删除,并自动调整后续条目的编号。

选做要求:
(1)查询时能模糊查询,输入一个字时,显示出所有名字中包含该字的所有信息。
(2)能统计通讯录中每个联系人的通信的频数,浏览时按频数由高到低进行显示。
3 其他要求
(1)界面美观,交互方便。
(2)注释详细:每个变量都要求有注释说明用途;函数有注释说明功能,对参数、返回值也要以注释的形式说明用途;关键的语句段要求有注释解释。
(3)程序的层次清晰,可读性强。
(4)变量、函数命名符合规范。
(5)如有可能,可使用MFC 等开发工具,实现彩色或图形操作界面。
4 开发环境
可以选择TC2.0、TC3.0、VC++6.0等开发环境,或者与老师讨论,选择自己熟悉的开发工具与平台。

程序设计题目:手机通信录

【问题描述】
用C/C++设计出模拟手机通信系统,能实现对手机中的通信录进行添加、修改、查询等功能。

【基本要求】
(1) 用C/C++设计出模拟手机通信录系统,实现对手机中的通信录进行管理。
(2) 将通讯录用文件存储,人员信息包括:姓名、手机号码、家庭电话号码、办公电话、电子邮件、分组 。
(3) 其中:手机号码、家庭电话号码、办公电话不能同时为空;分组说明: 未知、同事、亲戚、朋友、家人、同学等还可以自己创建分组
(4) 文件类型可以是文本文件或二进制文件。

【系统必须的基本功能】
(1) 首先向客户展示一个欢迎界面,并提醒客户输入任意键进入主菜单,在菜单中客户进行操作选择,而且客户操作完后还可以根据需求进行返回主菜单进行其他操作。
(2)增加功能:
能录入新人员记录。
(3)查看功能:
选择此功能时,当选中某类时,显示出此类所有数据中的姓名和电话号码。
(4)拔号功能:
能显示出通信录中所有人的姓名,当选中某个姓名时,屏幕上模拟打字机的效果依次显示出此人的电话号码中的各个数字。
(5)修改功能:
选中某个人的姓名时,可对此人的相应数据进行修改。
(6)删除功能:
选中某个人的姓名时,可对此人的相应数据进行删除,并自动调整后续条目的编号。
(7)查找功能:
按姓名或按电话号码查找某人信息。
(8)保存功能:
将当前系统中各类记录存入文件中。
(9)退出系统
【选做要求】
(1)增加功能:当录入了重复的姓名和电话号码时,则提示数据录入重复并取消录入;默认分组“未知”。
(2)查找功能:模糊查找,如输入一个“李”,则列出所有姓李的信息。

【其他要求】
(1)界面美观,交互方便。
(2)注释详细:每个变量都要求有注释说明用途;函数有注释说明功能,对参数、返回值也要以注释的形式说明用途;关键的语句段要求有注释解释。
(3)程序的层次清晰,可读性强。
(4)变量、函数命名符合规范。
(5)如有可能,可使用MFC 等开发工具,实现彩色或图形操作界面。

【程序设计的开发环境】
VC++6.0,鼓励采用MFC等开发工具,实现彩色或图形操作界面,可以根据自己的体验增加相关功能模块。

程序设计题:双11抢宝计划

1 问题描述
随着双11的到来,电商纷纷展开促销活动,活动形式五花八门,时间节点也各不相同,本程序用以管理个人在抢购时关注的促销信息,并给予相应的提醒,以便及时下手。该系统主要功能包括促销信息、待购信息的新增、删除、修改、查找等。所有数据都要利用文件系统保存,以备系统下次运行时使用。通过此课题,熟练掌握文件、数组、指针的各种操作,以及一些基本算法的应用。

2 功能要求
代码要能提供以下几个基本功能。
(1)促销管理
 1)录入:录入促销信息,退出程序时要存储到文件中。录入格式内容自行设计。至少包括:商品类型、商品名称、商品细节、原价、促销活动、促销时间、促销商家。
 2)查询:根据商家、商品名称查询促销信息
(2)购物管理
 1)录入:录入待购的商品名称,退出时存储到文件中。录入格式自行内容设计。
2)查询:提供必要的查询功能
(3)抢宝日程
 根据购物计划匹配出相应的促销信息,选取心仪的设置提醒功能
 1)显示:显示当天可以进行的抢宝行动
 2)提醒:设置提醒时间,如促销开始前n分钟给出提醒
(4)界面功能要求:

  1. 采用友好的字符界面,实现一个功能控制菜单。
  2. 每次操作都从该菜单选择,利用循环结构使得一次运行程序可进行多次操作。
    选做要求:
    (1)增加预算和费用管理。
    (2)同类商品不同促销的比价。

3 其他要求
(1)界面美观,交互方便。
(2)注释详细:每个变量都要求有注释说明用途;函数有注释说明功能,对参数、返回值也要以注释的形式说明用途;关键的语句段要求有注释解释。
(3)程序的层次清晰,可读性强。
(4)变量、函数命名符合规范。
(5)如有可能,可使用MFC 等开发工具,实现彩色或图形操作界面。

4 开发环境
可以选择TC2.0、TC3.0、VC++6.0等开发环境,或者与老师讨论,选择自己熟悉的开发工具与平台。

*程序设计方法
(1)根据促销或购物的要求,设计合适的数据结构(如结构数组、链表、对象数组等实现)。
(2)选择文件存储格式(文本或二进制)和文件名。
(3)采用自顶向下的设计方法,设计系统的总体模块组成和数据结构。设计主程序的流程图和界面。
(4)对于每项操作,设计一个函数(方法、子模块)进行实现,要明确函数原型。
(5)根据设计结果分步开发实现各模块,最后进行总体集成。

程序设计题:贪吃蛇游戏

1 系统的基本功能
编写一个贪吃蛇游戏的程序。通过键盘上下左右键的点击,控制界面上贪吃蛇的移动,随机在界面上生成表示食物的图形,当贪吃蛇移动到食物所在的位置时,蛇的身体会变长。本程序有计分功能,获得每个食物得10分。贪吃蛇不能穿墙,不能咬到自己,否则游戏结束。
2 要求及提示
2.1 基本要求
要能提供以下几个基本功能:

  1. 在屏幕上绘制一条使用字符组成的贪食蛇。
  2. 通过键盘上的上下左右键控制蛇的移动。
  3. Space键用于暂停游戏。
  4. 若在游戏中,蛇头碰了墙或是自己的身体,则游戏结束。
  5. 每吃一个食物增加一节身体,并获得10分。
  6. 游戏结束后,给出总分及排名,并将结果存放到数据文件中。
    2.2 选做要求
    在游戏中,按F1键可以对游戏进行加速,按F2键可以对游戏进行减速。使用人工智能算法添加贪吃蛇对手,进行人机对战。
    2.3 提示
    程序的总体流程如下:

图 1贪食蛇小游戏总体流程图
2.4 其他要求
(1)在上述功能要求的基础上,为了提高成绩,可以添加一些额外的功能。
(2)变量、方法命名符合规范。
(3)注释详细:每个变量都要求有注释说明用途;方法有注释说明功能,对参数、返回值也要以注释的形式说明用途;关键的语句段要求有注释解释。
(4)程序的层次清晰,可读性强。
3 开发环境
开发工具可以选择VC++ 6.0或者Dev C++等C++开发工具。

程序设计题:挖地雷

1 问题描述
你玩过扫雷游戏吧?Windows操作系统中带了这个小游戏。在游戏中要想过关,就必须要在一个 NxM 的区域上找出所有的地雷。游戏过程中,计算机会在地图上显示一些数字从而帮助你确定哪里有地雷。例如,在下面这个有两颗地雷的 4x4 的地图(*表示地雷):

*...
....
.*..
....

根据上面的地图,可以计算出应该提供给游戏者的数字如下所示:

*100
2210
1*10
1110 

每个数字表示了该方格周围到底有几个地雷,当然,一个方格周围最多的时候只会有八个。
2 功能要求
代码要能提供以下几个基本功能。
(1)定义一个矩阵,随机产生地雷的分布并由此产生提供给游戏者的数字信息。
(2)定义成绩排行榜,记录前五名的用户名及时间。
(3)提供菜单功能,定义不同等级的地雷地图供选择。
(4)游戏者通过坐标(如1(1,2)、0(3,4)判定第一行第二列位置为地雷,第3行第四列不是地雷)判定是否为地雷,标记地雷位置正确,则正确位置显示@符号,如触碰地雷,游戏结束,没有触碰地雷,显示该坐标位置周边地雷分布情况,如果周边有地雷不显示。
(5)成绩排行榜以文件形式保存。
选做要求:
(1)对用户的输入进行一定的正确性检查。
(2)采用Turbo C/C++、MFC等开发工具,实现彩色或图形操作界面。
(3)设计一个功能选项“AI玩家”。当选中此功能后,用电脑模拟用户来玩猜数字游戏,并将整个游戏的过程输出至屏幕或文本文件。
3 其他要求
(1)界面美观,交互方便。
(2)注释详细:每个变量都要求有注释说明用途;函数有注释说明功能,对参数、返回值也要以注释的形式说明用途;关键的语句段要求有注释解释。
(3)程序的层次清晰,可读性强。
(4)变量、函数命名符合规范。
4 开发环境
可以选择TC2.0、TC3.0、VC++6.0等开发环境,或者与老师讨论,选择自己熟悉的开发工具与平台。

程序设计题: 王者农药

【问题描述】
腾讯公司的《王者荣耀》风靡全国,在国外都有不少玩家,带给人很多乐趣,让不少人沉迷其中。《王者荣耀》中有上百位英雄,每位英雄都有自己的特点和个性。现在让我们有C语言来编写一个游戏,名字为《王者农药》。
【游戏规则】
《王者农药》有15位英雄,每位英雄拥有数量不同的3种招数,招数使用数量耗尽之后就不能再使用。
三种招数分别为:剪刀、石头、布;
招数相克关系:剪刀克布,布克石头,石头克剪刀;
15位英雄属性表及所有招数数量:

剪刀	石头	布
赵云	2	2	2
宫本武藏	4	1	1
凯	2	3	1
白起	5	0	1
韩信	1	2	3
诸葛亮	2	1	3
刘邦	2	0	4
后羿	0	3	3
王昭君	1	1	4
妲己	4	1	1
安琪拉	1	4	1
貂蝉	3	2	1
露娜	1	3	2
不知火舞	4	2	0
蔡文姬	0	5	1

游戏开始时,由玩家选取三位己方英雄,对阵电脑随机选取的三位英雄,采取以下模式进行游戏:
第一步:对方在三位英雄中随机选取一位,随机出招(招数可使用数量不为0),对应可用招数数量减一;
第二步:我方选取一位英雄,英雄随机出招,对应可用招数数量减一。
第三步:如我方胜,我方胜利次数加1,否则对方胜利次数加1。
第四步:如果总次数<9则跳到第一步,否则本场游戏结束,跳到第五步。
第五步:统计我方和对方胜利场数。
【开发要求】
1、 将每场游戏敌我双方英雄出招情况记录在文件中;
2、 游戏开始前需要登录玩家,如无账号需先注册;
3、 对玩家胜利场数进行排行,可以查看所有玩家的排名;
4、 统计每位英雄的生路并进行排名;
选做要求:
对每次出招的时间进行限制,如果超过时间,则会导致我方随机出招。
【其它要求】
1, 变量、函数命名符合规范;
2. 注释详细;
3. 程序层次清晰,可读性强;
4. 界面美观,交互方便

程序设计题:五子棋对战

1 系统的基本功能
该系统要求编写一个可在一个NN的方阵中进行人人或者人机对战的五子棋游戏。五子棋是一个老少皆宜的游戏,本课题让你尝试自行设计一个五子棋游戏,在游戏过程中,黑子第一步走棋,两方玩家轮流下棋,直到有一方能五子连珠,赢得胜利,游戏结束。
2 要求及提示
2.1 基本要求
使用两种不同颜色的棋子代表不同玩家进行对战。在游戏过程中,黑子第一步走棋,两方玩家轮流下棋,直到有一方能五子连珠,赢得胜利,游戏结束。
(1) 在屏幕上绘制一个N
N的棋盘,空棋盘开局。
(2) 一方玩家输入坐标下棋,程序根据玩家输入更新棋盘。
(3) 对弈的两方轮流下棋,并更新棋盘。
(4) 如果该棋位已经被占领,则需要显示该步错误。
(5) 一方胜利的条件是横向、竖向、斜向五子同色连珠。
(6) 直到有一方取胜,游戏结束。
2.2 选做要求
(1)悔棋功能:能够实现悔上一步棋;
(2)人机交互:可选择实现人机对战。

2.3 系统流程图

图 1五子棋游戏系统流程图

3 开发环境
开发工具可以选择VC++ 6.0或者Dev C++等C++开发工具。

程序设计题:小学100以内正整数加减运算

1 问题描述
设计并实现“小学100以内整数加减运算”系统,程序要求如下:
(1)随机出10道题,这10道题目不能重复,如果是减法运算,要求被减数大于减数。
(2)这些题目,可以选择以下两种方式中的一种给出:
a.选择题,要求随机生成4个选项,正确答案包含其中;
b.填空题,可以让用户从键盘输入答案。
(3)用户每次答题,能根据答案计算是否得分,并计入总分。
(4)答题完毕,系统给出总用时。
(5)根据答题情况,能将用户的错误作答题目及答案保存,可以提供用户查看错题功能
2 功能要求
代码要能提供以下几个基本功能。
(1)提供菜单选项,让用户登录,答题。
(2)提供菜单选项,让用户查阅答题情况,答题期间不能查阅。
(3)提供菜单选项,错题再答,如果错题答对了,应从错题集中删除。
(4)提供菜单选项,可以选择生成题目到文本文件,同时生成所对应的答案到相应的文本文件,以便线下测试。
选做要求:
(1)在运算中添加括号,比如5-(95-93),系统也能正确算出答案。
(2)在菜单选项中,增加帮助功能,提供系统使用说明,模拟答题功能。
3 其他要求
(1)界面美观,交互方便。
(2)注释详细:每个变量都要求有注释说明用途;函数有注释说明功能,对参数、返回值也要以注释的形式说明用途;关键的语句段要求有注释解释。
(3)程序的层次清晰,可读性强。
(4)变量、函数命名符合规范。
(5)如有可能,可使用MFC 等开发工具,实现彩色或图形操作界面。
4 开发环境
可以选择TC2.0、TC3.0、VC++6.0等开发环境,或者与老师讨论,选择自己熟悉的开发工具与平台。

程序设计题:信息产业发展统计

出题人:吴家皋
面向专业:电子信息工程
难度等级:4
1 问题描述
该系统要求实现一个简单、实用的信息产业发展统计程序,主要功能包括信息产业发展数据的新增、删除、修改、查找、统计输出等。所有统计数据都要利用文件系统保存,以备系统下次运行时使用。通过此课题,熟练掌握文件、数组、指针的各种操作,以及一些基本算法的应用。
2 功能要求
代码要能提供以下几个基本功能。
(1)信息产业发展数据是由多条数据记录构成,其信息包括:
地区、年份、指标名称、计量单位、指标数量等。其中,地区包括:全国34个省、直辖市、自治区和港澳台;指标名称包括:固定电话用户数、移动电话用户数、互联网用户数、通信固定资产投入、通信业收入、信息服务收入、信息产品收入等。
(2)数据保存形式:
所有信息产业发展数据要以文本或二进制文件保存。
(3)需要实现的功能

  1. 新增信息产业发展数据条目。
  2. 查找数据(可按地区、年份、指标名称等查找)。
  3. 修改数据条目(先查找,再修改。若当前条件查找出多个记录,则提示用户增加查询条件继续查找,直到确定唯一记录后再修改)。
  4. 删除数据条目(请参考上面修改的处理)。
  5. 显示信息产业发展数据列表。
  6. 数据统计(可按地区、年份、指标名称等生成各种统计报表)。
  7. 保存数据到文件中、从文件中读入数据。
    (4)界面功能要求:
  8. 采用友好的字符界面,实现一个功能控制菜单。
  9. 每次操作都从该菜单选择,利用循环结构使得一次运行程序可进行多次操作。
    选做要求:
    (1)数据完整性保证。例如:地区和指标名称必须严格、规范。
    (2)指标名称的维护和扩展功能,让用户可以添加新的指标名称。
    (3)支持多地区、跨年份、多指标综合统计能力,要求报表格式灵活、形式多样、内容清楚,具体请学生自己构思、设计。
    3 其他要求
    (1)界面美观,交互方便。
    (2)注释详细:每个变量都要求有注释说明用途;函数有注释说明功能,对参数、返回值也要以注释的形式说明用途;关键的语句段要求有注释解释。
    (3)程序的层次清晰,可读性强。
    (4)变量、函数命名符合规范。
    (5)如有可能,可使用MFC 等开发工具,实现彩色或图形操作界面。

4 开发环境
可以选择TC2.0、TC3.0、VC++6.0等开发环境,或者与老师讨论,选择自己熟悉的开发工具与平台。

*程序设计方法
(1)根据信息产业发展数据信息要求,设计合适的数据结构(如结构数组、链表、对象数组等实现)。
(2)选择文件存储格式(文本或二进制)和文件名。
(3)采用自顶向下的设计方法,设计系统的总体模块组成和数据结构。设计主程序的流程图和界面。
(4)对于每项操作,设计一个函数(方法、子模块)进行实现,要明确函数原型。
(5)根据设计结果分步开发实现各模块,最后进行总体集成。

源码

https://pan.baidu.com/s/1SHX3aW20HP_98kAK11GSJg?pwd=0000

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
针对投票系统源代码 仅供参考 一、课程设计目的和任务 为完成对十佳运动员的选拔,故设计此程序通过众人对20位候选人的投票表决,选出其中票数最高的前十位,定为十佳运动员。这就要求本程序要能够录入20位候选人的名单,包括起编号和姓名,然后程序可以接受用户的投票,并且自动作出票数统计并输出最后的票数由高到低的排序结果。 二、分析与设计 1.程序的基本功能: (1)查看十佳运动员的候选名单。 (2) 接受用户的投票。 (3) 自动统计用户投票并输出排序结果。 (4) 添加一个管理员,可以录入候选者名单。 (5) 退出程序。 2.系统总框图: 3.定义的函数及说明: 本程序由11个函数构成 back_sel()---用来返回用户菜单 display1()------用来显示用户菜单 f_read()-------用来读出候选人名单 admirin_save()-----管理员输入数据并将数据存盘 admirin()------管理员录入数据界面 admir()——管理员界面登录 paixv()-----查看十佳候选人排名,票数由高到低 write()------调用此函数来写入票数 voting()------投票界面,进行对候选者的投票 select()-------首页界面选择 Main()---主函数。 4.算法设计: 本程序主要运用线性表的顺序存储结构,从而很容易的对数组进行操作。同时对于票数的统计排序方面采用比较经典的“冒泡法”来完成,从而优化了整个程序体,降低时间复杂度。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值