程序设计报告.docx

上传人:b****7 文档编号:9897558 上传时间:2023-02-07 格式:DOCX 页数:12 大小:19.43KB
下载 相关 举报
程序设计报告.docx_第1页
第1页 / 共12页
程序设计报告.docx_第2页
第2页 / 共12页
程序设计报告.docx_第3页
第3页 / 共12页
程序设计报告.docx_第4页
第4页 / 共12页
程序设计报告.docx_第5页
第5页 / 共12页
点击查看更多>>
下载资源
资源描述

程序设计报告.docx

《程序设计报告.docx》由会员分享,可在线阅读,更多相关《程序设计报告.docx(12页珍藏版)》请在冰豆网上搜索。

程序设计报告.docx

程序设计报告

程序设计报告

篇一:

程序设计报告

要求每个小组做全本套题目

时限:

1s

【题目描述】

有一个字符集合,它只包含a-z这26个小写字母。

根据集合的定义,集合的容量是集合含有不同元素的个数。

由于该集合中包含了非常多的重复字母,因此让你编程计算下该集合的容量,也就是该集合包含了多少不相同的字母。

【输入】

有多组样例。

第一行为样例的个数T。

接下来T行,每一行代表一个样例。

这一行为一个字符串,表示一个集合。

规定以’{’开头,以’}’结束。

每个字符用’,’给开,逗号与逗号后的元素空出一个空格。

【输出】

每个集合的容量。

一个样例占一行。

【输入样例】

2

{a,b,c}

{a,b,a,b}

【输出样例】

3

2

B吉利数字

时限:

1s

【题目描述】

算卦大湿biboyouyun最近得出一个神奇的结论,如果一个数字,它的各个数位相加能够被10整除,那么称它为吉利数。

现在叫你计算某个区间内有多少个吉利数字。

【输入】

第一行为样例个数N。

接下来N行,每一行代表一个输入样例,每个输入样例有2个数,分别代表某个区间的起点a和终点b。

注意所求区间为[a,b],1=a=b=10

【输出】

N行。

对于第x个输入样例,在第x行输入该样例所对应的结果。

【输入样例】

2

110

120

【输出样例】

1

【Hint】1-10之内无幸运数,1-20内只有19这1个幸运数

C炸弹袭击

时限:

1s

【题目描述】

H族的领地是一片富饶之地,有丰富的资源,无数的黄金。

尽管异族侵略者被压制几百多年,他们并没有放弃对这片土地的渴望。

最近,他们研制了一枚重磅炸弹。

试图用它摧毁H族的防御工事。

H族的防御工事由多个基地构成,侵略者试图用炸弹摧毁尽量多的防御基地,现在,他们急需你的帮助。

如果你能为他们解决难题,会有巨大的奖励。

〔该炸弹的攻击范围是一个半径为r单位的圆〕

【输入】

第一行为样例的个数T。

每个样例中有假设干行,第一行为炸弹的攻击半径r,r有可能不是整数(1=r=100)

第二行是一个整数n,表示H族防御基地的个数(1=n=100)

接下来n行,每行有两个数,代表H族某个防御基地的坐标

【输出】

只有一个数,代表炸弹能最多摧毁的H族防御基地数量。

【输入样例】

1

1

3

10

01

40

【输出样例】

2

D.机器人

时限:

1s

【题目描述】

Paul有n个重物堆在一条线上。

该重物由1连续编号到n,最左边的物品编号为1,最右边的物品编号为n。

每个物品的重量,第i个物品的重量为Wi公斤。

Paul需要收集所有重物,但是他很懒。

因此他打算用他全新的机器人。

该机器人有两个不同的手臂-左手和右手,可以连续执行以下操作:

用左手拿最左边的重物,花费Wi·l能量单位〔Wi是最左边的物品的重量,l是某一参数〕。

如果与之前的动作是一样的〔上一次用左手〕,机器人须额外花费Ql的能量单位;

用右手拿最右边的重物,花费Wj·r能量单位〔Wj是最右边的物品的重量,r是某一参数〕。

如果与之前的动作是一样的〔上一次用右手〕,机器人须额外花费Qr的能量单位;

Paul想让机器人花费尽可能少的能量来帮他完成任务。

他想让你来解决这个问题。

你的任务是求解机器人收集所有重物可花费的最低能量值。

【输入】

第一行是一个数T,代表有T组输入样例

每个输入样例样例有两行:

第一行是五个变量n,?

l,?

r,?

Ql,?

Qr(1?

≤?

n?

≤?

105;?

1?

≤?

l,?

r?

≤?

100;?

1?

≤?

Ql,?

Qr?

≤?

104);第二行是n个重物的重量w1,w2….wn(1?

≤?

wi?

≤?

100)。

【输出】

每个样例只有1个数,代表机器人最小消耗的能量

【输入样例】

2

344191

42399

47239

1234

【输出样例】

576

34

篇二:

C++程序设计报告

课程名称:

C++课程设计

设计题目:

编写程序提示用户输入一个班级中的学生人数n,

再依次提示用户输入n个人在课程A中的考试成

绩,然后计算出平均值,显示出来。

要求用到第

九章中的数组类模板Array定义浮点型数组存储

考试成绩。

姓名:

石东梅

学号:

1108020222

专业班级:

网络1101班

完成日期:

20222年6月27日

1设计任务

编写程序提示用户输入一个班级中的学生人数n,再依次提示用户输入n个人在课程A中

点型数组存储考试成绩。

的考试成绩,然后计算出平均值,显示出来。

要求用到第九章中的数组类模板Array定义浮

1.1设计目的

〔1〕、加强C++课程学习,将课本上的理论知识运用于实践,通过实际的程序操作来提高

自己编写程序的能力,到达理论与实践相结合的目的。

〔2〕、培养自己动脑思考,动手操作的能力,在实际操作过程中体会C++中面向对象的思

想。

〔3〕、在实际的操作过程中去衡量自己理论知识掌握的程度,通过设计流程,编写程序,

上机调试去寻找并发现知识的缺陷,并想方法弥补。

〔4〕、在本程序中主要是要到达能对类的定义及用法,数组的定义及用法,数组类模版,

运算符重载,多文件结构,成员函数的实现等的熟练运用。

用数组类模板、析构函数、构造函数、赋值构造函数、运算符重载、指针等语法来完

成一个班级在某门课程中考试的平均值的程序。

设计指标:

用C++完成一个班级在某门课程中的成绩储存并计算平均值的程序,要求用到数组类模板。

输入要求:

在程序运行的页面根据提示输入班级学生人数n,再依次输入每个人在课程A

中的成绩。

输出要求:

输出n个人在课程A中的平均成绩。

2设计过程

〔1〕、分析程序的功能:

使用户能根据程序提示输入班级学生人数n和n个人在某门课中

考试成绩,并能储存成绩然后计算平均值,显示出来。

〔2〕、思考程序要用到的算法原理:

使用数组类模板定义浮点型数组存储考试成绩;利用

班级总人数与其在课程A中的总分之比的原理求平均值。

〔3〕、设计程序流程图〔见2.3〕。

〔4〕、编写程序〔见2.4〕。

2.1程序功能

使用户能根据程序提示输入班级学生人数n和n个人在某门课中考试成绩,并能储存成

绩然后计算平均值,显示出来。

〔1〕、使用数组类模板定义浮点型数组存储考试成绩;

〔2〕、利用班级总人数与其在课程A中的总分之比的原理求平均值。

2.4程序主要模块或者函数

#ifndefARRAY_H

#defineARRAY_H

#includeiostream.h

#includestdlib.h

#ifndefNULL

constintNULL=0;

#endif

enumErrorType

//错误类型集合,共有三种类型

{invalidArraySize,memoryAllocationError,indexOutOfRange};char*errorMsg[]=

{

Invalidarraysize,Memoryallocationerror,

Invalidindex:

};

templateclassT

classArray

{

private:

T*alist;//T类型指针,用于存放动态分配的数组内存首地址intsize;

voidError(ErrorTypeerror,intbadIndex=0)const;

public:

Array(intsz=50);

Array(constArrayTA);

~Array(void);

//重载=使数组对象可以整体赋值

ArrayToperator=(constArrayTrhs);

Toperator[](inti);

operatorT*(void)const;

intListSize(void)const;

voidResize(intsz);

};

//以下为类成员函数的实现

templateclassT

voidArrayT:

:

Error(ErrorTypeerror,intbadIndex)const{

couterrorMsg[error];

if(error==indexOutOfRange)

coutbadIndex;//如果是下标越界错,输出错误的下标

coutendl;

exit

(1);

}

templateclassT

ArrayT:

:

Array(intsz)

{

if(sz=0)//sz为数组大小〔元素个数〕,假设小于0,那么输出错误信息Error(invalidArraySize);

size=sz;

alist=newT[size];//动态分配size个T类型的元素空间

if(alist==NULL)//如果分配内存不成功,输出错误信息

Error(memoryAllocationError);

}

templateclassT

ArrayT:

:

~Array(void)

{

delete[]alist;

}

templateclassT

ArrayT:

:

Array(constArrayTX)

{

//从对象X取得数组大小,并赋值给当前对象的成员

intn=X.size;

size=n;

alist=newT[n];

if(alist==NULL)//如果分配内存不成功,输出错误信息

Error(memoryAllocationError)

T*srcptr=X.alist;

T*destptr=alist;

while(n--)

*destptr++=*srcptr++;

}

//重载=运算符,将对象rhs赋值给本对象。

实现对象之间的整体赋值templateclassT

ArrayTArrayT:

:

operator=(constArrayTrhs)

{

intn=rhs.size;

if(size!

=n)

{

delete[]alist;

alist=newT[n];//重新分配n个元素的内存

if(alist==NULL)

Error(memoryAllocationError);

size=n;//记录本对象的数组大小

}

//从rhs向本对象复制元素

篇三:

C语言程序设计报告书

《C语言程序设计》

实验设计报告

学院:

_专业班级:

学生姓名:

学号:

指导老师:

设计题目:

____________________________

年06月16日

2022

1.设计题目:

学生考勤系统设计.............................................................................3

2.设计方案:

.............................................................................................................3

3.模块说明:

...............................................................................................................3

3.1系统功能模块....................................................................................................................3

3.2函数以及调用关系............................................................................................................4

4.代码分析及程序优化...............................................................................................9

5.数据文件名及说明...............................................................................................10

6.系统运行测试结果分析........................................................................................10

6.1进入程序..........................................................................................................................10

6.2加载界面..........................................................................................................................11

4.3创立学生信息..................................................................................................................11

4.4录入本课考勤情况..........................................................................................................12

6.4修改学生信息..................................................................................................................12

6.5查询学生考勤信息..........................................................................................................13

6.6查看班级考勤情况..........................................................................................................13

6.7源程序清单和执行结果:

..............................................................................................14

1.设计题目:

学生考勤系统设计

2.设计方案:

该系统能考察学生的出勤情况,所以包括每个班学生的全部信息。

每个学生是一条记录,包括姓名﹑性别﹑学号,对应于某天某门课程

的出勤情况等。

该系统可模拟考勤过程,记录考勤结果,并能在课程

结束后按照设定的考勤评分标准自动给出每个学生的考勤分数。

其中,学生可在本系统在线请假以及查看学期内的上课出勤信

息。

在线请假中,学生可以随时查看到请假的详细进展情况。

同时,

学生可以查看本期内上课出勤的详细信息,如:

查看某个课程在整个

学期内的出勤情况——请假、旷课、迟到、早退了多少次,以及具体

的时间、任课老师姓名、第几节可等详细信息。

学生还可以查看本人

的根本信息,如:

所在院系、年级、专业、班级、学号、姓名、性别

等,以及修改个人用户密码,查看本班的课表。

对于任课老师,其使用本系统时,管理所教班级学生的上课出勤

信息以及查看所教学生的上课出勤信息。

老师自动列出还没有在网上

公布的学生上课出勤信息,系统依据学生请假系统,决定学生上课出

勤的最终结果。

并且查看自己所教课程、所教班级学生整个上课出勤

统计信息以及详细信息。

3.模块说明:

根据设计要求,画出如下流程图:

voidmune_1();/*菜单函数1*/

voidmune_2()/*菜单函数2*/

voidenter(void);/*录入函数*/

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

当前位置:首页 > 求职职场 > 职业规划

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

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