项目1:计算机设计大赛赛事统计
一、问题分析和任务定义
参加计算机设计大赛的n个学校编号为1~n,赛事分成m个项目,项目的编号为1~m.比赛获奖按照得分降序,取前三名,写一个统计程序产生各种成绩单和得分报表。
1)每个比赛项目至少有10支参赛队;每个学校最多有6支队伍参赛;
2)能统计各学校的总分;
3)可以按照学校编号或名称查询,学校的总分、各项目的总分排序输出;
4)可以按学校编号查询学校某个项目的获奖情况;可以按项目编号查询取得前三名的学校;
5)数据存入文件并能随时查询
二、逻辑设计
数据结构:
结构体team,保存各队伍相关信息,包括队伍编号,学校编号,获奖情况,参与项目及得分。
结构体schoolscore, 保存学校相关信息,包括学校总分,各项目总分及学校名称。
结构体teams, 保存各项目名称。
函数功能描述:
Menu():菜单
Input():输入数据
Pricejudge():颁奖
Scorecount():总分计算并输出
Schoolsearch():按学校编号查询奖项信息
Sportsearch():按项目编号查询奖项信息
函数调用关系图:
项目2:校园导游咨询
一、问题分析和任务定义
设计一个校园导游程序,为来访的客人提供各种信息查询服务。
1) 设计你所在学校的校园平面图,所含景点不少于10个.以图中顶点表示校内各景点,存放景点名称、代号、简介 等信息;以边表示路径,存放路径长度等相关信息。
2) 为来访客人提供图中任意景点相关信息的查询。
3) 为来访客人提供图中任意景点的问路查询,即查询任意两个景点之间的一条最短的简单路径。
以江苏科技大学长山校区为例。
二、逻辑设计
数据结构:
结构体scenic,存放景点的相邻景点编号及对应路径长度,景点名称及景点描述
二维线性表dist,存放两景点间距离
二维线性表path,存放最短路径两点间的中间景点编号
函数功能描述:
menu():菜单
leadingin():录入景点信息
information():查询景点信息
input():查询最短路径输入两点编号
shortestpath():最短路径计算
函数调用关系图:
项目3:算术表达式求解
一、问题分析和任务定义
设计一个简单的算术表达式计算器。
实现标准整数类型的四则运算表达式的求值(包含括号,可多层嵌入)
要求自行设计非法表达式,进行程序测试,以保证程序的稳定运行。
二、逻辑设计
数据结构:
栈s,存放运算符
栈t,存放数字
线性表str,存放输入的表达式
线性表st,标记各字符类型
函数功能描述:
menu():菜单
input():输入表达式
function():计算
change():将各符号转换为对应数字
Evaluate():计算
函数调用关系图: