程序设计实践报告.docx
《程序设计实践报告.docx》由会员分享,可在线阅读,更多相关《程序设计实践报告.docx(11页珍藏版)》请在冰豆网上搜索。
程序设计实践报告
程序设计实践报告
本文是关于《程序设计实践报告》范文,详情请您对下文进行参考:
本文编辑:
1、实验目的、内容
通过课程设计,能够熟练运用C++进行面向对象编程,建立对象模型,降低软件的复杂性,改善软件的重用性和维护性,提高软件的生产效率,全面掌握面向对象编程技术.
要求学生在指导老师的指导下,独立完成实习课题的全部内容,包括:
(1)通过调查研究和上机实习,收集和调查有关技术资料;
(2)掌握设计课题的基本步骤和方法;
(3)根据课题的要求进行上机实验调试.
2、题目一:
比赛求平均分
2.1程序内容
在体育、文艺比赛及选举等打分类项目中,为了公平起见,往往n个评委打出分数后,要去掉一个最高分和一个最低分,然后求取平均得分。
当n较大时(本题设为9),则应取掉两个最高分和两个最低分,然后求取平均分。
编程实现该算法。
2.2实验程序设计及结构
(1)需求分析:
输入9个评委所打分数,程序运行最后结果为去掉最高分和最低分后的平均分.
(2)设计结构:
总体结构
数据结构
从a[0]到a[9]依次为9位评委的打分.
2.3设计过程
(1)建立iostream/ofstream/fstream、输入、输出、输入输出流对象,建立ifndef,define预编命令,STRUCT数据.
(2)根据流程图,建立main函数,并运用for循环.
(3)运行main函数进行调试.
2.4运行结果
3、题目二:
火柴游戏
3.1程序内容:
23根火柴游戏:
两个游戏者开始拥有23根火柴(或小棒)。
每个游戏者轮流移走1根、2根或3根火柴,拿到最后一根火柴的就算输了。
编一程序与计算机玩这个游戏。
3.2实验程序设计
(1)需求分析:
运行程序能使人与计算机进行23根火柴游戏。
(2)设计思路:
使计算机能最先使火柴变成4或4以下计算机就能赢了。
3.3设计过程
(1)建立iostream/ofstream/fstream、输入、输出、输入输出流对象,建立ifndef,define预编命令,STRUCT数据.
(2)根据设计思路运用if判断语句设计
(3)建立main函数
(4)运行main函数调试
3.4运行结果
4、题目三:
足球比分
4.1设计内容:
问题描述
足球联赛采用主客场双循环赛制,胜一场得3分,平局各得1分,负一场得0分,联赛排名以积分多者在前,当两队(或多队)积分相同时,则净胜球(即进球数与失球数之差)多者在前,若净胜球相同,则进球数多者在前,若仍相同,则抽签或踢附加赛决定名次(这在联赛结束后进行,联赛未结束则两队名次并列,本程序不做这方面要求)。
试编一程序统计最近一轮比赛后,各队积分及排名。
基本要求
设积分表结构如下:
队名(不超过15个字符),已比赛的场数,赢的场数,平的场数,负的场数,进球数,失球数,积分。
积分表放在正文文件中。
最近一轮的结果从键盘输入,其形式为:
主队名(可用代码),客队名(可用代码),主队得分(即进球数),客队得分(即进球数)。
程序应根据此轮结果修改各队的积分和名次,所得的最新记分表仍在原积分文件中并同时在屏幕上显示。
测试数据
可选择我国当年的甲A或甲B联赛的数据输入,并检查与报章公布的数据是否一致。
4.2设计方案:
定义一个球队类和对象数组,每个球队均是球队类的对象。
由于联赛中参赛队伍数目是固定的,因此将每个球队存放在对象数组的一个数组元素中。
每输入两个队的比赛成绩,则相应的队的有关数据(比赛场数,赢得场数,进球数等等)即可进行修改,比赛成绩录入完成,调用联赛排序方法(对象数组作为参数,积分为排序元素)排出名次并输出。
5、设计的特点与心得:
经过一个学期的学习和上机实践,使我对C++语言有了更认识和和了解,要想学好它要重在实践,要通过不断的上机操作才能更好的学习它,通过实践,我也发现我的好多不足之处,对各种控制结构及语句、数组的基本与高级应用、指针数组、字符数组、动态数组、函数的定义、调用方式;函数在编程中的具体应用;以及变量存储特征与标识符的作用域,通过实践,使我在这些方面有了认识和提高。
课程设计它是一项任务,更是一种挑战和历练。
在课程设计中,为了使用时方便,着重对不足方面的知识进行了分析与理解,在这一过程中对文件的操作有了很大的提高。
通过实际的演练,可以增强对知识的理解和运用能力。
饰面层是纸面石膏板。
它是用自攻螺丝钉在轻钢龙骨上面的。
自攻螺丝要做防锈处理。
纸面石膏板的规格多是2400mm/1200/18mm。
当纸面石膏板根据设计造型封顶以后,要用纸质胶带粘结拼接处,以防裂缝。
再通过刮腻子的方式将纸面石膏板掩于下方,增加了装饰效果,有色泽。
参考文献
[1]、杨长兴、刘卫国,《C++程序设计》,中国铁道出版社,2020年
附录
题目一实验源代码:
#include
#include
voidmain()
{
inta[9],i,j,temp,b=0,s;
cout<<"请打分:
"<for(i=0;i<9;i++)
{
cin>>a[i];
}
for(i=0;i<9;i++)
for(j=i;j<9;j++)
{
if(a[i]<=a[j])
{
temp=a[i];
a[i]=a[j];
a[j]=temp;
}
}
for(i=2;i<7;i++)
{
b=b+a[i];
}
s=b/5;
cout<<"最后成绩为:
"<
}
题目二实验源代码:
#include
#include
#include
intgetMin(inta,intb)
{
returna
a:
b;
}
intmain()
{
printf("游戏开始\n");
intcount=23;
intinput;
intcomputerInput;
while(true)
{
printf("当前还剩%d根火柴,请玩家拿取火柴:
\n",count);
printf("1.一根火柴");
if(count>=2)
{
printf("2.两根火柴");
}
if(count>=3)
{
printf("3.三根火柴");
}
printf("\n");
while(true)
{
std:
:
cin>>input;
if(input==1||(input==2&&count>=2)||(input==3&&count>=3))
break;
else
printf("请正确输入序号\n");
}
count-=input;
if(count==0)
{
printf("游戏结束,玩家输掉了游戏\n");
break;
}
if(count%4==1)
{
computerInput=rand()%(getMin(count,3))+1;
}
else
{
computerInput=(count%4==0)?
3:
count%4-1;
}
printf("电脑拿走了%d根火柴\n",computerInput);
count-=computerInput;
if(count==0)
{
printf("游戏结束,电脑输掉了游戏\n");
break;
}
}
system("pause");
}
首先,是关于会计基础的内容,基本程序是:
填制原始凭证,原始凭证的审核,填制记账凭证,记账凭证的审核,科目汇总表的填写,登日记账、明细账、总账,编写银行存款余额调节表,编制相关的会计财务报表,还有财产的清查,相关单据填制的演示。
题目三实验源代码:
//程序需要先在d盘建立2个文本文档teams.txt,teamlist.txt,以保存球队信息和比分信息//
#include
#include
#include
usingnamespacestd;
classTeam{
private:
intgoal;
intcgoal;
intpgoal;
intwin;
intlost;
intequal;
intscorce;
public:
charname[20];
Team(){
goal=0;
cgoal=0;
pgoal=0;
win=0;
lost=0;
equal=0;
scorce=0;
}
voidDisplay(){
cout<在我理解了自己的工作之后,觉得单位的管理条例很细也很严,尤其对于我们设计部的要求很严格。
我们做的是一条龙的综合设计,初到公司,领导觉着对工作不太了解,一开始要我主要负责设计部的画图,然后领导根据我的能力让我负责广告的版面设计,包括广告视觉传达中的文字;广告视觉传达中的色彩;广告视觉传达中的形象,广告画面的编排等等。
短短的一个月,在工作的过程中体会到软件操作的重要性和软件运用的熟练程度。
公司并不像在学校老师让我们作业的时候有足够的时间去慢慢想,慢慢完成,而公司对工作的要求是很严格的,尤其在时间的限制上,因为做的又是一条龙设计,所以要求在规定的时间内必须做出一定数量的方案!
}
voidgoalchg(inta);
voidmatchchg(inta,intb);
voidmatch(Team&t);
voidsetIm();
intgetS();
intgetPG();
};
voidTeam:
:
goalchg(inta){
if(a>0)
this->goal+=a;
if(a<0)
this->cgoal-=a;
pgoal=goal-cgoal;
}
voidTeam:
:
matchchg(inta,intb){
if(a>b){
this->win+=1;
this->scorce+=3;
}
if(a
this->lost+=1;
}
if(a==b){
this->equal+=1;
this->scorce+=1;
}
}
voidTeam:
:
match(Team&t){
inta,b;
cout<<"presshome'sgoal:
";
cin>>a;
if(a<0){
cout<<"warning"<exit
(1);
}
cout<<"pressihome'sgoal:
";
cin>>b;
if(b<0){
cout<<"warning"<exit
(1);
}
this->goalchg(a);
this->goalchg(0-b);
t.goalchg(b);
t.goalchg(0-a);
this->matchchg(a,b);
t.matchchg(b,a);
}
voidTeam:
:
setIm(){
cout<<"team'sname:
";
cin>>this->name;
}
intTeam:
:
getS(){