学计算机软件技术基础(VC)课程设计报告
学院 信息工程 班级 电子C082 姓名 学号 成绩 __ __
一、题目: 设计考场编排 生成准考证号(B)
二、设计思路
1、总体设计
1)分析程序的功能
通过输入考场信息,录入考生的考号与姓名,分别进行存储,并确定考生人数根据考生人数为考生编排考场与座位号,已给定了学校代码,取学号前两位与考场号座位号,学校代码相叠加生成考生的准考证号,清晰反映考试系统。
2)系统总体结构:设计程序的组成模块,简述各模块功能。
程序由六个模块构成
模块一 学生初始信息的录入,实现信息的存储。
模块二 模块一中录入的学生考号,取前两位作为准考证的的一部分清晰显示其信息。
模块三 为学生编排座位号,并将座位号作为准考证的一部分录入。
模块四 为学生编排考场,并将考场号作为准考证的一部分录入。
模块五 学校代码转化作为准考证号的一部分。
模块六 由各模块生成的数据实现准考证号。
2、各功能模块的设计:说明各功能模块的实现方法
模块一 录入学生信息姓名与考号属于不同类型,要通过使用构造数据类型来实现不同类型的录入,录入学生信息以循环来实现反复的调用,并将学生的信息保存在结构数组之中。
模块二 取考号的前两位作为准考证的一部分,首先,考号为5位的整型数,而准考证号为字符型,将考号前两位转换成字符型,以考号对1000求整取得前两位。新生成的两位数分别对10求余求整再与0的ASCII值转化成字符型。
模块三 为学生编排座位号时,根据录入的人数与每班仅容的数设计。每班容纳人数50人,座位号将由01—50,定义一个循环来实现。使循环变量为对五十求余加一,就是座位号.
模块四 考场编排类似于模块三。
模块五 学校代码转换成字符型直接赋予其值
模块六 各模块实现数据按照题目要求进行拼接,利用循
环来实现拼接与输出各考生信息。
3、设计中的主要困难及解决方案
在这部分论述设计中遇到的主要困难及解决方案。
1)困难:各模块中都有的整型对字符型的转换与储存,这是本题
实现的关键问题。
解决方案:将整形数求整或求余后,加上对应的0的ASCII码植转换成字符型。
4、你所设计的程序最终完成的功能
1)说明你编制的程序能完成的功能
根据输入的考生信息.考生个数,并为考生编排座位,考场,与准考生号。
2)准备的测试数据及运行结果
三、程序清单
#include
const int CODE=18;//学校代码
int n=4;
struct student //定义结构体
{
char testID[8];//准考证号
char name[20];//姓名
int num;//考号
int place;//座位号
int ExamRoom;//考场
}stu[4];
void inputstudent()
{
int i;
for (i=0;i>stu[i].name;
cout<<"请输入第"<>stu[i].num;
}
}
void main ()
{
int N,j,i;
inputstudent();
if (n%50!=0)
N=n/50+1;
else N=n/50;
for(i=0;i