C++语言课程设计报告--影像管理系统

朝生暮死 范文 报告范文
精选回答

C++语言课程设计报告--影像管理系统本文简介:内蒙古科技大学课程设计说明书内蒙古科技大学本科生课程设计说明书题目:c++语言课程设计——影像管理系统学生姓名:张耀学号:1176807335专业:计算机科学与技术班级:计算机三班指导教师:36内蒙古科技大学课程设计任务书课程名称c++++语言课程设计设计题目影碟信息管理系统指导教师周李涌时间201

C++语言课程设计报告--影像管理系统本文内容:

内蒙古科技大学课程设计说明书

内蒙古科技大学

本科生课程设计说明书

目:c++语言课程设计

——影像管理系统

学生姓名:张耀

号:1176807335

业:计算机科学与技术

级:计算机三班

指导教师:

36

内蒙古科技大学课程设计任务书

课程名称

c++++语言课程设计

设计题目

影碟信息管理系统

指导教师

周李涌

时间

2012.12.31——2013.1.4

一、教学要求

1.

巩固和加深学生对c++++语言课程的基本知识的理解和掌握

2.

掌握c++++语言编程和程序调试的基本技能

3.

利用c++++语言进行基本的软件设计

4.

掌握书写程序设计说明文档的能力

5.

提高运用c++语言解决实际问题的能力

二、设计资料及参数

每个学生在教师提供的课程设计题目中任意选择一题,独立完成,题目选定后不可更换。

影碟信息管理系统

图影碟息包括:电影名称、出品公司、导演姓名、主演姓名(至少2个)、上映时间、库存数量、价格等。试设计一影碟信息管理系统,使之能提供以下功能:

v

影碟信息录入功能(影碟信息用文件保存)--输入;影碟信息浏览功能--输出

v

查询或排序功能:(至少两种查询方式)--算法

●按电影名称查询

●按主演姓名查询

v

影碟信息的插入、删除与修改

v

影碟的借出与归还

三、设计要求及成果

1.

分析课程设计题目的功能需求(可选用数组或链表实现,可多人(最多3人)协作完成一个题目)

2.

写出详细设计说明(至少包括功能实现分析和模块流程图)

3.

编写程序代码,调试程序使其能正确运行(代码书写要规范,标示符要见名知意,要有必要的注释,每人至少3个函数,每人至少200行代码,不包括注释和花括号)

4.

设计完成的软件要便于操作和使用

5.

设计完成后提交课程设计报告(请严格按照模板进行排版)

四、进度安排

第一天

选择课程设计题目,分析课题的要求

第二天

编程

第三天

编程及调试

第四天

写课程设计报告

第五天

提交课程设计报告(打印稿及电子稿)

五、评分标准

1.

根据平时上机考勤、表现和进度,教师将每天点名和检查

2.

根据课程设计完成情况,必须有可运行的软件。

3.

根据课程设计报告的质量,如有雷同,则所有雷同的所有人均判为不及格。

六、建议参考资料

1.《c++语言程序设计》,谭浩强,清华大学出版社

2.《c++语言程序设计课程设计》,刘振安,机械工业出版社

影像信息管理系统目录

内蒙古科技大学课程设计任务书I

第一章

需求分析3

1.1引言3

1.2任务概述3

1.3数据描述3

1.4功能需求3

1.5性能需求3

1.6运行需求4

1.7任务计划4

第二章概要设计5

2.1总体设计5

2.2数据类型设计(或数据结构设计)5

2.3接口设计

//函数声明5

2.4运行界面设计5

第三章详细设计7

3.1输入模块设计7

3.2输出模块设计7

3.3查找模块设计7

3.4排序模块设计7

3.5保存及读取模块设计7

第四章测试分析8

4.1测试程序执行情况8

4.2出现的问题和解决的方法8

第五章用户手册(可选)9

5.1使用说明9

5.2运行说明9

第六章课程设计总结10

附录:程序代码11

参考文献12

致谢13

第一章

需求分析

1.1

引言

c++语言具有高级语言的强大功能,却又有很多直接操作计算机硬件的功能(这些都是汇编语言的功能),因此,c++语言通常又被称为中级语言。学习和掌握c++语言,既可以增进对于计算机底层工作机制的了解,又为进一步学习其他高级语言打下了坚实的基础。

为了方便对影像进行管理,用c++程序实现这一想法。

1.2

任务概述

影像信息管理系统

影像信息包括:碟片名称,演员,类型,可否借阅等。试设计一碟片信息管理系统,使之能提供以下功能:

v

碟片信息录入功能(碟片信息用文件保存)--输入

v

碟片信息浏览功能--输出

v

查询或排序功能:(至少两种种查询方式)--算法

●按名称查询

●按演员名查询

v

碟片的借出与归还

1.3

数据描述

class

cd

{

friend

class

MoiveSystem;

private:

char

film_name[10];

char

actor

[10];

char

type[10];

int

n;

};

class

MoiveSystem

{

public:

MoiveSystem();

public:

void

add(void);

int

check_name(void);

int

check_actor(void);

int

rent(void)

;

void

retur_n(void)

;

private:

cd

CD[1000];

int

cd_number;

};

MoiveSystem::MoiveSystem()

{

cd_number

=

1;

}

定义结构体类型,该类型包括四个成员:依次为碟片的名称,演员,类型,可否借阅。

1.4

功能需求

实现:按名称查询

按演员名查询

增加碟片

借阅碟片

归还碟片

1.5

性能需求

要求反应时间快,对碟片的信息了解较全面。(时间特性)

1.6

运行需求

屏幕格式:有菜单和工具栏以方便操作

各数据信息可以在屏幕直接修改

各数据结果可在屏幕显示

硬件环境:普通计算机

编译环境:vc++++6.0

1.7

任务计划

设计c++程序,实现影像管理的各项功能。

碟片查询:两种查询方式分别为按名称查询,按演员查询,其中如果按要求找到对应的碟片,则输出该书目的所有信息。

碟片增加:可输入碟片信息。

碟片借阅:可按名称查询到碟片并借阅。

碟片归还:可按名称查询到碟片并归还。

第二章

概要设计

2.1

总体设计

总体设计目标:使用者可以利用本系统进行对影像借阅的各项运算操作,根据用户的需求自动的进行添加碟片,借阅碟片,归还碟片。查找所要的碟片,查阅碟片的详细资料,查阅演员的详细资料。最后清晰完整的结果于屏幕中。大大方便使用者对碟片借阅的操作,不仅节省时间,而且提高准确性,可以达到事半功倍的效果。

总体设计策略:本系统采用的是自顶向下、层次化的模块结构。

查询(名称)

增加

结构图:

归还

菜单

主函数

查询(演员)

借阅

2.2

数据类型设计(或数据结构设计)

class

cd

{

friend

class

MoiveSystem;

private:

char

film_name[10];

char

actor

[10];

char

type[10];

int

n;

};

2.3

接口设计

一.void

add(void);

二.int

check_name(void);

三.int

check_actor(void);

四.int

rent(void);

五.void

retur_n

(void);

2.4

运行界面设计

第三章

详细设计

3.1

输入模块设计

void

MoiveSystem::add(void)

{

FILEa;

char

s;

s=

y

;

system(“cls“);

while

(s==

y

)

{

system(“cls“);

cout

>

s;

fclose(a);

system(“cls“);

}

}

3.2

查询(名称)模块设计

int

MoiveSystem::check_name(void)

{

int

i;

FILEa;

char

cd_name[10];

system(“cls“);

a=fopen(“cd.txt“,“r“);

while(!feof(a))

{

fscanf(a,“%s

%s

%s

%d“,if(!feof(a))

cd_number++;

}

cout

>

cd_name;

getchar();

for(i

=

0;

i

>

actor;

getchar();

for(i

=

0;

i

>

cd_name;

getchar();

k++;

for

(j

=

0;

j

>

cd_name;

getchar();

k++;

for

(j

=

0;

j

>

choice;

getchar();

}

}

第四章

测试分析

4.1

测试程序执行情况

第五章

课程设计总结

一门课程设计是一种对语言内容的提炼和使用,当确定所要设计的内容是,要从其所要实现的功能上下手,所确立的课题要拥有的功能是从一个用户的角度所来考虑的,用户是不知道其源程序,同时不知道任何内部细节,对于用户或者所该软件的使用者来说,你所要呈现的是一个清楚明了的界面,而他们可以从这个界面上得到他们所要实现的东西这是开发一个软件里应具有的思维程序,如同一个源程序的算法一样,这样一个算法的建立会让你有理有章,先要做些什么,然后下一步是什么,这也是从一个解决问题的理论高度上所出发的,每一问题的解决理所当然有一个如何解决的思路呈现,下面就具体用这个

程序的设计过程来说明。

当确立要设计一个影像管理系统的c++语言程序时,所呈现的第一个问题是什么:当你对所谓的影像管理流程一无所知时,你应当做的第一步是什么,对了,就是首先去了解它——了解它的作用,它的流程,它的功能。这是一个必须要经历的阶段,只有当你熟练掌握你所要求的东西的细节之后,你的围绕才能展开,你所做的后续工作一切的核心都将围绕它,当你要一个个实现它的功能是时,你的思路里要求孕育着它,这就是你做这个软件的前提,当我了解一个影像管理系统的功能时,了解他所要求的细节时,一切就更加顺理成章。我知道了一个影像管理系统要求有影像信息的录入,影像信息的修改,影像信息的删除,影像的排序,影像信息的浏览,影像信息的查询当然还有后续的一些功能,这首先必须得建立在基础的功能之上,然后达到进一步的实现。然后就是组装这些功能,实现一个算法的流程。显而易见主函数就起到一个选择的作用,使用switch语句来选择相应的功能,当然也可以附加一个menu的子函数,用主函数对他的调用,再通过它来实现选择的作用。而主函数中的printf语句就可以呈现给用户一个明确的界面信息,告诉用户如何选择,如何实现相应的功能。

当然这一切都只是个框架,并不具备具体的内容,要达到具体的内容不是让让其成为一个空架子,所以对于相应子函数的逐个设计是整个重心!而每一个子函数的实现都是一个对于细节相当程度上的把握问题,需要一遍又一遍的提炼。最终才能做得更好。往往所学习的知识内容,即你所拥有的知识储备,难以实现所有的要求,利用资源,而且是合理的吸收资源,反而成为一个相当比重的能力,对于新知识的吸收和把握才能更好的体现你所具备的能力,从我所设计这个程序的过程上讲,当具体着手做的时候,所具备的知识是不足以实现的,学习链表的相应使用,学习文件的相应功能上的应用都是一个必须所经过的过程。这其中有许多可以借鉴的子函数,它们所具备的功能加以改进就可以实现自己程序的功能,例如建立动态链表的函数,节点插入的insert函数,以及最基本的一些函数如排序的灵活运用都是一个利用资源的能力,要做的是理解这些程序,然后才能灵活的运用这些东西,通过这些东西的理解也是对c++语言具体相应规则的更加深刻的了解!同时还有仅靠课本上的内容不足以使程序达到一定的程度,因此借用一些完善程序的某些内容可以使自己的程序更加趋于完善!

这一切的过程说起来也许可以条分缕析,但是真正做的时候要求的东西更多,需要更加的定下心来,面对一串串代码,运算符,以及标点符号一个也许很不显眼的问题就足以让你头昏脑胀,要理清思路,要关注每一点。整体上的把握,例如不要忽视了函数的声明,以至于无法运行,尝试着多一些调试,每一次改动都要考虑到方方面面,要整体上把握你的程序,这样才能减少不知所以的错误,当错误出现的时候,你可以准确的把握错误所出现的地方,这种能力的实现就是要求足够的细心,要求你对程序整体上的把握足够的熟练,当用三天的时间就针对一个链表排序来改变不同种做法的时候,也许你觉得这一切都足够的不可思议,然而实际上远远不是如此,你可以从这个过程中旁敲侧击的理解许多容易忽略的东西,熟练不是说出来的,熟练是做出来的!特别对于计算机专业的来说,对于软件的开发来说,一切的错误不可避免,一切都趋于正常为此你所建立的信心是足够强大的!一切其实只是个开始,我们还都只是个门外汉,当你知道的越多,你能感受到什么,是的,你会明白你是无知的,往往你所拥有的知识只不过是凤毛麟角,当你逐渐明白或者说感受到这些东西的话你就不会沾沾自喜,你需要更加去学习去钻研,如果你无法定下心来这一切都不可能实现。

一次课程设计并不是最重要的,重要的是什么?是你通过自主的学习理解到如何去面对你生活或者学习上的问题,一个解决问题处理问题的方案,一个身在问题之中,然后你能够如何不被它搅得不知所措,能够把握住自己的思路,一步一步走下去,时间只是个过程,过程中会有好多东西值得去做!

课程设计并不是结束了,它只是暂告了一个段落,如果真正能够从中得到什么,我想就是需要做的东西更多,需要做的事情更多!面对挑战面对知识的接踵而至总以一种孜孜不倦的态度,永远需求!

附录:程序代码

#include

#include

#include

using

namespace

std;

class

cd

{

friend

class

MoiveSystem;

private:

char

film_name[10];

char

actor

[10];

char

type[10];

int

n;

};

class

MoiveSystem

{

public:

MoiveSystem();

public:

void

add(void);

int

check_name(void);

int

check_actor(void);

int

rent(void)

;

void

retur_n(void)

;

private:

cd

CD[1000];

int

cd_number;

};

MoiveSystem::MoiveSystem()

{

cd_number

=

1;

}

void

MoiveSystem::add(void)

{

FILEa;

char

s;

s=

y

;

system(“cls“);

while

(s==

y

)

{

system(“cls“);

cout

>

s;

fclose(a);

system(“cls“);

}

}

int

MoiveSystem::check_name(void)

{

int

i;

FILEa;

char

cd_name[10];

system(“cls“);

a=fopen(“cd.txt“,“r“);

while(!feof(a))

{

fscanf(a,“%s

%s

%s

%d“,if(!feof(a))

cd_number++;

}

cout

>

cd_name;

getchar();

for(i

=

0;

i

>

actor;

getchar();

for(i

=

0;

i

>

cd_name;

getchar();

k++;

for

(j

=

0;

j

>

cd_name;

getchar();

k++;

for

(j

=

0;

j

>

choice;

getchar();

}

}

int

main

(void)

{

MoiveSystemapp

=

new

MoiveSystem();

char

choice;

while

(choice!=

f

)

{

cout

>

choice;

switch(choice)

{

case

a

:

{

app->add();

break;

}

case

b

:

{

app->check_name();

break;

}

case

c

:

{

app->check_actor();

break;

}

case

d

:

{

app->rent();

break;

}

case

e

:

{

app->retur_n();

break;

}

case

f

:

{

delete

app;

exit(0);

break;

}

}

}

delete

app;

return

0;

}

参考文献

吴敏

杨国林著.《c++面向对象程序设计》.

呼和浩特:内蒙古大学出版社.2006.7

致谢

骤雨初晴 2022-07-15 01:46:51

相关推荐

蚍蜉撼树是什么意思蚍(蚍蜉撼树是什么意思)

1、蜉蝣树(拼音pfhnsh)是中国成语,蜉蝣树(蜉蝣:一种大蚂蚁;Shake:摇动)比喻力量本来就很弱,但是你想摇动一个很强大的东西,就不能随心所欲了。这个成语一般用作主语、谓语、宾语,属于主谓式,含有贬义。...
展开详情

得意洋洋,反义词(得意洋洋的反义词)

1、得意洋洋的反义词有郁郁寡欢的,有空虚进取的书,有哭天抢地的,有郁郁寡欢的,有失意的,有垂头丧气的,有谦虚谨慎的,有黯然销魂的,有抑郁的。2、“得意”是中国成语,读作:dyyngyng,解释为:得意:明白意图...
展开详情

新时代的门当户对的意思(门当户对的意思)

1、中国成语的意思是“mndnghdu‐”,过去指男女双方家庭的社会政治地位和经济地位相当,适合通婚和结婚。2、出自汪芫师傅《西厢记》第二本第一折:“虽不般配,总比捉贼强。”...
展开详情

如法炮制的意思和造句(如法炮制)

1、如法炮制(拼音:rfpozh)是一个成语,起源于西汉的司马迁《史记魏世家》。2、如法炮制(炮制:一种将中药焙炒的方法)是指按照制造方法制造中药;比喻按照现成的方式办事。一般在句子中做谓语、定语、状语。3、出...
展开详情

阳春白雪和下里巴人最初指的是什么(春白雪)

1、杨春白雪。2、杨春白雪,中国的一个成语,发音为yngchnbixu,最初指战国时期楚国比较高雅的歌曲,后来指博大精深的文学艺术。3、战国楚宋玉《对楚王问》:“仲英有歌者,其开头为:《对楚王问》《下里》。全国...
展开详情

精选推荐更多>

救人一命胜造七级浮屠中的浮屠是指

“救人一命,胜造七级浮屠”中的“浮屠”是指佛教建筑形式,即所说的塔,又称浮图。读作jiù rén yī mìng,shèng zào qī jí fú tú。这种建筑最初用以供奉佛骨,后来用以供奉佛像,收藏经书。词语指救人一条性命,犹如建筑一座七级宝塔,功德无量。用以劝人行善,或向人恳求救命。
“救人一命,胜造七级浮屠”是一个汉语成语,意思是为死去的人造塔,毕竟不如“救人一命”的功德更大,更有意义。

己亥岁这首诗深刻地揭示了什么

《己亥岁二首》深刻地揭示了战争对人民造成的深重灾难和浩劫。
原文:
其一:
泽国江山入战图,生民何计乐樵苏。
凭君莫话封侯事,一将功成万骨枯。
其二:
传闻一战百神愁,两岸强兵过未休。
谁道沧江总无事,近来长共血争流。
译文:
其一:
富饶的水域江山都已绘入战图,百姓想要打柴割草度日而不得。
请你别再提什么封侯的事情了,一将功成要牺牲多少士卒生命!
其二:
传说一旦开战连众神灵都发愁,两岸军队连年混战一直不停休。
谁还说沧江总是太平没有祸事,近来江水混着鲜血争先向东流。
《己亥岁二首》是唐代诗人曹松的组诗作品。这组诗以干支为题,以示纪实,明确表明了对现实的批判态度。全诗概况地写出了战争对人民造成的深重灾难和浩劫,以冷峻深邃的目光洞穿千百年来封建战争的实质,写得力透纸背,入木三分。

山居秋暝是什么体裁的诗

《山居秋暝》是一首五言律诗,运用了反衬手法和对典故的艺术手法。《山居秋暝》是唐代诗人王维写的初秋时节所见雨后黄昏的景色,为山水名篇。该诗于诗情画意之中寄托着诗人高洁的情怀和对理想境界的追求。
原文:
空山新雨后,天气晚来秋。
明月松间照,清泉石上流。
竹喧归浣女,莲动下渔舟。
随意春芳歇,王孙自可留。
全诗将空山雨后的秋凉,松间明月的光照,石上清泉的声音以及浣女归来竹林中的喧笑声,渔船穿过荷花的动态,和谐完美地融合在一起,给人一种丰富新鲜的感受。它像一幅清新秀丽的山水画,又像一支恬静优美的抒情乐曲,体现了王维诗中有画的创作特点。

个个和各个的区别

个个与各个的区别:指代不同、出处不同、侧重点不同。
一、指代不同:
1、个个:一个一个,每一个。
2、各个:每个;所有的那些个;逐个。
二、出处不同:
1、个个:出自毛泽东《对晋绥日报编辑人员的谈话》:“陕北的部队经过整训诉苦以后,战士们的觉悟提高了……个个磨拳擦掌,士气很高,一出马就打了胜仗。”
2、各个:出自《儿女英雄传》第一回:“家人们听见老爷得了外任,各个喜出望外。”
三、侧重点不同:
1、个个:指团体或整体。
2、各个:指具体的每一个。
“个个”造句:
1、登上山顶时,我们个个累得气喘吁吁的。
2、孩子们个个天真活泼,多么可爱!
“各个”造句:
1、围棋比赛时,小华利用诱敌深入,各个击破的战法,瓦解了对方的攻势。
2、校长负责学校各个方面的工作。
常见热点问答
热点搜索
1-20
21-40
41-60
61-80
81-100
101-120
121-140
141-160
161-180
181-200
作文大全
1-20
21-40
41-60
61-80
81-100
101-120
121-140
141-160
161-180
181-200