C++程序设计报告

时间:2024.4.20

 

               

1 设计任务

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

的考试成绩,然后计算出平均值,显示出来。要求用到第九章中的数组类模板Array定义浮点型数组存储考试成绩。

1.1 设计目的

 (1)、加强C++课程学习,将课本上的理论知识运用于实践,通过实际的程序操作来提高自己编写程序的能力,达到理论与实践相结合的目的。

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

 (3)、在实际的操作过程中去衡量自己理论知识掌握的程度,通过设计流程,编写程序,上机调试去寻找并发现知识的缺陷,并想办法弥补。

 (4)、在本程序中主要是要达到能对类的定义及用法,数组的定义及用法,数组类模版,运算符重载,多文件结构,成员函数的实现等的熟练运用。

1.2设计内容

用数组类模板、析构函数、构造函数 、赋值构造函数、运算符重载、指针等语法来完成一个班级在某门课程中考试的平均值的程序。

1.3设计指标或者要求

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

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

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

2 设计过程

(1)、分析程序的功能:使用户能根据程序提示输入班级学生人数n和n个人在某门课中考试成绩,并能储存成绩然后计算平均值,显示出来。

(2)、思考程序要用到的算法原理:使用数组类模板定义浮点型数组存储考试成绩;利用班级总人数与其在课程A中的总分之比的原理求平均值。

(3)、设计程序流程图(见2.3)。

(4)、编写程序(见2.4)。

2.1 程序功能

  使用户能根据程序提示输入班级学生人数n和n个人在某门课中考试成绩,并能储存成绩然后计算平均值,显示出来。

2.2算法原理

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

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

2.3程序流程图

圆角矩形: 开始
               

            

 

文本框: AverScore=TotalScore/n

 

2.4 程序主要模块或者函数

#ifndef ARRAY_H

#define ARRAY_H

#include <iostream.h>

#include <stdlib.h>

#ifndef NULL

const int NULL = 0;

#endif

enum ErrorType

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

{invalidArraySize, memoryAllocationError, indexOutOfRange};

char *errorMsg[] =

{

"Invalid array size", "Memory allocation error",

"Invalid index: "

};

template <class T>

class Array

{

private:

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

int size;

void Error(ErrorType error,int badIndex=0) const;

public:

Array(int sz = 50);

Array(const Array<T>& A);

~Array(void);

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

Array<T>& operator= (const Array<T>& rhs);

T& operator[](int i);

operator T* (void) const;

int ListSize(void) const;

void Resize(int sz);

};

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

template <class T>

void Array<T>::Error(ErrorType error, int badIndex) const

{

cout << errorMsg[error];

if (error == indexOutOfRange)

cout << badIndex; //如果是下标越界错,输出错误的下标

cout << endl;

exit(1);

}

template <class T>

Array<T>::Array(int sz)

{

if (sz <= 0) //sz为数组大小(元素个数),若小于0,则输出错误信息

Error(invalidArraySize);

size = sz;

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

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

Error(memoryAllocationError);

}

template <class T>

Array<T>::~Array(void)

{

delete [] alist;

}

template <class T>

Array<T>::Array(const Array<T>& X)

{

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

int n = X.size;

size = n;

alist = new T[n];

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

Error(memoryAllocationError)

T* srcptr = X.alist;

T* destptr = alist;

 while (n--)

*destptr++ = *srcptr++;

}

// 重载"="运算符,将对象rhs赋值给本对象。实现对象之间的整体赋值

template <class T>

Array<T>& Array<T>::operator= (const Array<T>& rhs)

{

int n = rhs.size;

if (size != n)

{

delete [] alist;

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

if (alist == NULL)

Error(memoryAllocationError);

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

}

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

T* destptr = alist;

T* srcptr = rhs.alist;

while (n--)

*destptr++ = *srcptr++;

return *this;

}

// 重载下标操作符,实现与普通数组一样通过下标访问元素,并且具有越界检查功能

template <class T>

T& Array<T>::operator[] (int n)

{

// 检查下标是否越界

if (n < 0 || n > size-1)

Error(indexOutOfRange,n);

// 返回下标为n的数组元素

return alist[n];

}

template <class T>

Array<T>::operator T* (void) const

{

// 返回当前对象中私有数组的首地址

return alist;

}

//取当前数组的大小

template <class T>

int Array<T>::ListSize(void) const

{

return size;

}

// 将数组大小修改为sz

template <class T>

void Array<T>::Resize(int sz)

{

if (sz <= 0)

Error(invalidArraySize);

if (sz == size)

return;

T* newlist = new T[sz];

if (newlist == NULL)

Error(memoryAllocationError);

int n = (sz <= size) ? sz : size;

// 将原有数组中前n个元素复制到新数组中

T* srcptr = alist;

T* destptr = newlist;

while (n--)

*destptr++ = *srcptr++;

delete[] alist;

alist = newlist;

size = sz;

}

#endif

void main()

{

int n;

double AverScore,TotalScore = 0;

cout << "请输入学生人数:";

cin >> n;

Array<float> Score(n);

for (int i=0; i<n; i++)

{

cout << "请输入第" << i+1 <<"个学生的课程A成绩(0~100):";

cin >> Score[i];

TotalScore += Score[i];

}

AverScore = TotalScore/n;

cout << "平均成绩为"  << AverScore << endl;

}

3软件运行或者测试结果

   若一个班学生人数为10,他们的在课程A中的考试成绩分别为88、78、90、93、69、89、95、77、79、90,根据程序提示依次输入,则程序运行结果如图所示:

4 软件设计过程中遇到的问题以及解决办法

   在这次设计程序的过程中遇到了许多问题:比如对类模板、数组的内存分配、指针、析构函数等知识掌握不牢固,使得拿到题目无从下手;不知道重载运算符“=”可以对数组整体赋值;对this指针概念模糊;但最后都通过请教别人和翻课本,上网查找相关资料等途径解决了。

    参考文献:C++语言程序设计(第四版)、C++程序设计(第二版) 谭浩强著、Visual  C++编程之道。

5 总结

这两周的c++课程设计,时间上说长不长,说短也不短,却让我学到了很多:对很多函数有了新的认识,对c++有了更深刻的了解,增强了程序的编写能力,巩固了专业知识。在写程序的过程中我学到了自己曾经不知道或一些不会用的函数,特别是多文件结构,类模板,运算符的重载等;也让我明白了学好c++是多么重要;在自己基础知识掌握不牢固的情况下,要设计一个程序是多么难。总的来说,这次课程设计实习让我受益匪浅。

虽然在调试程序的过程中遇到了许多困难,有时候甚至觉得一点头绪都没有,无从下手,但最终都通过各种渠道,各种方式,一一解决了。从中也让我知道了要学好这门课程,仅学习课本上的知识,掌握理论是不够的,还要有较强的实践能力。只有多实践,多编写程序,多调试才能更好地学地掌握书本上的知识,从而学好这门课。此外,在上机调试的过程中一定要有耐心,耐心地去寻找错误并改正错误;还要记住经常犯的错误,保下次不再犯同样的错误;遇到自己不能解决问题要勤于翻书,查找资料,或者问别人,不要怕麻烦。

   


第二篇:C语言校园导游程序设计报告


课程设计:校园导游系统

石家庄铁道大学

校园导游系统设计报告

班级:计0801-2

姓名:盖龙飞

学号:20082514

完成日期:2010-9-13

课程设计:校园导游系统

1.需求分析:

此次课程设计的主要内容是校园导航系统,所谓系统其实也不尽然,只不过是个小小的提示,为来访的客人提供各种信息查询服务。主要包括:①查看学校的全景图②各个景点的简介③学校主要景点的分布④查看某一景点到其它所有景点的最短路径⑤查询任意两个景点之间的最短路径。

一些约定:

⑴对于功能①的输入形式是没什么要求的,主要就是根据菜单的提示输入相应的数字选择相应的功能;对于功能②的输入形式的要求也比较简单,要查询某一景点的简介直接输入其对应的编号即可;对于功能③的输入形式的要求同功能①;对于功能④只需要输入想要查看的起始景点的编号即可;对于功能⑤只需要输入起始景点和目的景点的编号即可。此程序在输入形式上都没什么特殊的要求只是一些简单的数字就可以搞定一切。

⑵功能①③就是输出由字符构成的一幅简易图,形式比较单一;景点的简介方面输出景点的简单信息就可以了;要查询最短路径的话输出的自然是从起始景点到目的地的最短路径中所途经的各个景点及距离。

⑶本程序所能达到的功能就是前面所提到的①—⑤中的功能。

2.概要设计:

抽象数据类型的定义:

课程设计:校园导游系统

ADT Graph{

数据对象 V:V具有相同特性的数组元素的集合,称为顶点集。 数据关系 R:

R={VR}

VR={<v,w>|v,w∈V且P(v,w),<v,w> 表示从v到w的弧,谓词P(v,w)定义了弧<v,w>的意义或信息}

基本操作P:

CreateGraph(&G,V,VR);

初始条件:V是图的顶点集,VR是图中弧的集合。

操作结果:按V和VR的定义构造图G。

DistroyGraph(&G)

初始条件:图G存在

操作结果:销毁图G

LocateVex(G,u);

初始条件:图G存在,u和G中顶点有相同的特征。

操作结果:若存在顶点u,则返回该顶点在图中的位置;否则返回其他信息。

GetVex(G,u);

课程设计:校园导游系统

初始条件:图G存在,u是图中的顶点。

操作结果:返回u的值。

InsertVex(&G,v);

初始条件 :图G存在,v和图中的顶点有相同的特性。 操作结果:在图G中新增顶点v.

InsertArc(&G,v,w);

初始条件:图G存在,v和w是图中的顶点。

操作结果:在图G中增添弧<v,w>,若是无向图,还增添弧<w,v>。 }ADT Graph

主程序流程(各函数之间的调用关系):

Main();//主函数

Initview();//景点信息的初始化

InitLength();//各个景点之间距离的初始化

log();//登录时的头部

showmenu();//登录后的菜单

browser();//全景图的浏览

browse_view_info();//景点简介的查询

browse_view_distribute();//主要景点的分布

onetoall();//某一景点到其它所有景点的最短路径

课程设计:校园导游系统

onetoone();//查询任意两个景点之间的最短路径 调用关系如下:(函数内部没什么调用关系)

C语言校园导游程序设计报告

3.详细设计:

⑴图的结构:

typedef struct view//点的结构

{

int no;//景点编号

char name[100];//景点名称

char briefinfo[1000];//景点简介

}view;

typedef struct edge//边的结构

{

int length;//两个景点之间的距离

char direction[4];//方向

}edge;

课程设计:校园导游系统

⑵各个函数的伪代码如下

Initview()、InitLength()、log()、showmenu()、broser()、browse_view_distribute()、browse_view_info()等都是一些初始化或者即时显示,此处不再写其伪代码,在附录中给出。

Main()

{ path=(edge **)malloc(MAX*sizeof(edge));

for(v=0;v<MAX;v++)

path[v]=(edge *)malloc(1000*sizeof(edge));

TD=(view *)malloc(MAX*sizeof(view));

D=(DistancMatrix )malloc(MAX*sizeof(DistancMatrix));

P=(PathMatrix )malloc(MAX*sizeof(PathMatrix));

for(v=0;v<MAX;++v) P[v]=(int *)malloc(MAX*sizeof(int *));

Initview(TD); InitLength(path);//初始化 system("mode con: cols=140 lines=130");

log();while(1){

showmenu();//菜单 printf("请选择:\n"); scanf("%d",&k); switch(k){ case 1: browser();system("cls");break; case 2: browse_view_info(TD);system("cls");break; case 3: browse_view_distribute();system("cls");break;

课程设计:校园导游系统

case 4: onetoall(P,D,TD,path);system("cls");break;

case 5: onetoone(P,D,TD,path); system("cls");break;

case 0: exit(0); }}}

Void onetoone(PathMatrix P,DistancMatrix D,view *TD,edge **path)

{//迪杰斯特拉算法

while(flag) {

printf(请输入一个起始景点编号); scanf(v0); if(v0<0||v0>MAX) {printf("景点编号不存在!请重新输入景点编号:"); scanf(v0);} if(v0>=0&&v0<MAX) flag=0; }

flag=1;

while(flag) {

printf("请输入一个目的地景点编号:"); scanf("%d",&v1); if(v1<0||v1>MAX) { printf("景点编号不存在!请重新输入景点编号:"); scanf("%d",&v1); }if(v1>=0&&v1<MAX)

课程设计:校园导游系统

flag=0; }

for(v=0;v<MAX;v++) {

}

D[v0]=0;final[v0]=1;

for(i=1;i<MAX;i++){

min=INFINITY; for(w=0;w<MAX;w++) if(!final[w]) if(D[w]<min){v=w;min=D[w];} final[v]=0; D[v]=path[v0][v].length; for(w=0;w<MAX;w++)P[v][w]=0; if(D[v]<INFINITY){ P[v][v0]=1;P[v][v]=1; } final[v]=1;

for(w=0;w<MAX;w++) if(!final[w]&&(min+path[v][w].length<D[w])) {D[w]=min+path[v][w].length; }} v=v1; w1=v0; for(x=0;x<MAX;x++) P[w][x]=P[v][x]; P[w][w]=1;

课程设计:校园导游系统

printf("%s",TD[v0].name);

do{

flag=0;min=INFINITY; for(w=0;w<MAX;w++){ if(P[v][w]&&w!=v0){ flag=1;if(D[w]<min){j=w;min=D[w];} }} if(flag) {//输出部分

printf("向%s走%dm",path[w1][j].direction,path[w1][j].length);

printf("-->%s",TD[j].name); w1=j;P[v][j]=0;} else break;

}while(1);

printf("\n 总路线长%dm\n\n",D[v]);

printf("完毕,按任意键继续!\n");

getch();}

onetoall()与onetoone()函数用的是相同的算法这里不再赘述。 4调试分析:

(1)设计过程中遇到的问题:

调试过程中难免会遇见这样或者那样的问题,一个很低级的错误就是在字符串的赋值上居然还会出错,本来是不可以像int型数据那样直接用等于号赋值的,可是刚开始由于失误却犯了这样低级的错误

课程设计:校园导游系统

结果导致出现102个错误,当时确实有点慌了,等冷静下来一想才把问题想明白,字符串的赋值必须用strcpy函数。看来基本功还是相当的重要的。

剩下的就是最主要的问题也可以说是99%的问题,都在迪杰斯特拉算法上了,迪杰斯特拉算法是我们重点学习的一个算法当时学习时就感觉很吃力,不过当时也确实弄明白了,只可惜都过去好长一段时间了所以有所遗忘,算法确实是按照书上所写的抄到了程序中。最短路径确实也存到了数组P[v0][v]中,可是在输出相应的景点名称时总不能输出正确,感觉是很不可思议的问题,后来才明白数组P中的存储是按照一定的顺序存储的但是并不一定是路径中所途经的景点的顺序,所以最后选择在求最短路径过程中将其输出。

回顾讨论和分析:迪杰斯特拉算法其实放在这里多少有些不合适,因为不管在求任意两个景点之间的最短路径还是求某一景点到其它景点的最短路径时都要完全的执行一遍算法时间复杂度是很高的,当时在实现时也确实考虑到了这个问题只是后来感觉要是实现时间复杂度的降低不是很简单也就暂时放弃了,也就选择了将这个算法直接搬了过来,这里是一点败笔,尚需要改进。

(2)算法的时空分析和改进设想:

主要还是迪杰斯特拉算法的时空分析:在计算到剩下的MAX-1个顶点的最短距离时第一个for循环时时间复杂度是O(n),每进行一次第二个for循环的时间复杂度都是O(n),第三个for循环也就是存储途经顶点时用的循环而不是书中算法所用的只是个地址的赋

课程设计:校园导游系统

值,所以时间复杂度也是O(n),这样总的时间复杂度就是O(n3)。

改进设想主要就是给用户一个浏览路线的推荐本来在程序设计初期是计划要实现这个功能的,但是由于时间和能力问题没有去实现,因为它涉及到汉密尔顿路的实现,目前感觉还比较复杂所以暂时放弃了,日后如果有机会一定将这个功能完善。

(3)经验和体会:

经验吧说实在的也谈不上什么就一点信息越全才能使你的程序功能越完善。至于体会嘛,细心加耐心再加细节就等于成功!

5.用户使用说明:

程序刚运行时显示主要景点及其编号;菜单。

⑴ 输入1显示校园的全景图;

⑵ 输入2查询各个景点的简介范围0-49;

⑶ 输入3显示主要景点的分布图;

⑷ 输入4查询某一景点到所有景点的最短路径;

⑸ 输入5查询任意两个景点之间的最短路径;

⑹ 输入0退出系统;

6.测试结果: :请输入您想要查看的景点的编号:

输出:第四教学楼,此教学楼不是很了解貌似是建筑艺术学院专有的教学楼,上课教室都是固定的。

:请输入您想要查看的景点的编号:

输出:工程训练中心,机械院的学生实习的场所,其他院工业认

课程设计:校园导游系统

知实习时也会在此。里面有个很出名的风功能研究中心。

请按任意键继续! 请输入一个起始景点编号景点编号不存在!请重新输入景点编号请输入一个目的地景点编号输出:第三栋宿舍楼(含医院)向东走10m-->第二栋宿舍楼向北走60m-->大礼堂 总路线长70m

完毕,按任意键继续!

请输入一个起始景点编号 输出:第十二栋宿舍楼向西走40m-->春晖楼向北走20m-->泽园向西走40m-->大礼堂向北走10m-->教学实验楼(建设中)

总路线长110m

完毕,按任意键继续!

7.附录:

#include<stdio.h>#include<stdlib.h>#include<string.h>

#include<windows.h>#include<conio.h>#include<malloc.h> #define MAX 50#define TRUE 1#define FALSE 0

#define INFINITY 10000

typedef int **PathMatrix;

typedef int *DistancMatrix;

typedef struct view

{ int no;//景点编号

char name[100];//景点名称

课程设计:校园导游系统

char briefinfo[1000];//景点简介

}view;

typedef struct edge

{ //pathlength arcs;//两个景点之间的距离 int length; char direction[4];//方向 }edge;

void showmenu(){

printf(" ************************************\n"); printf(" $ 主要景点列表 $ \n"); printf(" ************************************\n"); printf(" <23> 操场<22> 游泳馆\n"); printf(" <19> 3教<21> 体育馆\n"); printf(" <17> 2教<1> 1教\n"); printf(" <24> 图书馆<25> 2实验楼\n"); printf(" <40> 9实验楼<3> 医院 \n"); printf(" <5> 春晖楼<32> 7#宿舍楼 \n"); printf(" <10> 青春苑<34> 二三食堂\n"); printf(" <3> 医院<0>大门\n\n"); printf(" 1.查看学校全景图\n"); printf(" 2.查询各个景点简介\n"); printf(" 3.查看学校主要景点分布图\n"); printf(" 4.查询某一景点到其它所有景点的最短路径\n");

课程设计:校园导游系统

printf(" 5.查询任意两景点之间的最短路径\n");

//printf("\t\t\t\t\t\t6.游览路线推荐\n");printf(" 0.退出\n");} void log()

{ printf("\t\t\t\t\t\t\t"); printf("欢"); Sleep(100); printf("迎"); Sleep(100); printf("进");Sleep(100); printf("入");Sleep(100); printf("石");Sleep(100);printf("家"); Sleep(100);printf("庄"); Sleep(100);printf("铁");Sleep(100);printf("道"); Sleep(100); printf("大");Sleep(100);printf("学");Sleep(100); printf("校"); Sleep(100);printf("园");Sleep(100);printf("导"); Sleep(100); printf("游");Sleep(100);printf("咨"); Sleep(100);printf("询");

Sleep(100);printf("系");Sleep(100);printf("统"); Sleep(100); printf("\n");}

view *Initview(view *TD)

{//初始化景点内容

int i; or(i=0;i<MAX;i++) TD[i].no=i;

strcpy(TD[0].name,"学校大门");

strcpy(TD[1].name,"第一教学楼");

strcpy(TD[2].name,"第四教学楼");

strcpy(TD[3].name,"第三栋宿舍楼(含医院)");

strcpy(TD[4].name,"第二栋宿舍楼");

strcpy(TD[5].name,"春晖楼"); strcpy(TD[6].name,"开元楼"); strcpy(TD[7].name,"招待所");

课程设计:校园导游系统

strcpy(TD[8].name,"第十二栋宿舍楼");

strcpy(TD[9].name,"第十三栋宿舍楼");

strcpy(TD[10].name,"青春苑"); strcpy(TD[11].name,"篮球场一");

strcpy(TD[12].name,"泽园"); strcpy(TD[13].name,"大礼堂");

strcpy(TD[14].name,"第一实验楼"); strcpy(TD[15].name,"翠园");

strcpy(TD[16].name,"沁园"); strcpy(TD[17].name,"第二教学楼");

strcpy(TD[18].name,"工程训练中心");

strcpy(TD[19].name,"第三教学楼"); strcpy(TD[20].name,"西操场");

strcpy(TD[21].name,"体育馆");

strcpy(TD[22].name,"游泳教学场"); strcpy(TD[23].name,"大操场");

strcpy(TD[24].name,"图书馆");

strcpy(TD[25].name,"第二实验楼");

strcpy(TD[26].name,"第五教学楼");

strcpy(TD[27].name,"教学实验楼(建设中)");

strcpy(TD[28].name,"第五栋宿舍楼");

strcpy(TD[29].name,"第四栋宿舍楼");

strcpy(TD[30].name,"研究生楼");

课程设计:校园导游系统

strcpy(TD[31].name,"第六栋宿舍楼");

strcpy(TD[32].name,"第七栋宿舍楼");

strcpy(TD[33].name,"第八栋宿舍楼");

strcpy(TD[34].name,"第二三食堂");

strcpy(TD[35].name,"第九栋宿舍楼");

strcpy(TD[36].name,"篮球场二");

strcpy(TD[37].name,"消费合作社");

strcpy(TD[38].name,"第三实验楼");

strcpy(TD[39].name,"机械工程学院");

strcpy(TD[40].name,"第九实验楼"); strcpy(TD[41].name,"樱花林");

strcpy(TD[42].name,"交通事故应急中心");

strcpy(TD[43].name,"洗浴中心"); strcpy(TD[44].name,"开水房");

strcpy(TD[45].name,"第一栋宿舍楼");

strcpy(TD[46].name,"第十栋宿舍楼");

strcpy(TD[47].name,"第十一栋宿舍楼");

strcpy(TD[48].name,"第十五栋宿舍楼");

strcpy(TD[49].name,"学校小门");

strcpy(TD[0].briefinfo,"学校大门,出门坐车的地方门口有环2,有23路(到火车站)有64路(到北站),平常学生很少在此出门一般都是车辆出入的地方。");

课程设计:校园导游系统

strcpy(TD[1].briefinfo,"第一教学楼,学校最大的教学楼学生上课自习的地方,五楼有机房有耳麦也就是语音室。");

strcpy(TD[2].briefinfo,"第四教学楼,此教学楼不是很了解貌似是建筑艺术学院专有的教学楼,上课教室都是固定的。");

strcpy(TD[3].briefinfo,"第三栋宿舍楼(含医院)交通学院的男生宿舍楼建筑貌似相当的破,可以跟六栋媲美了。医院更是不堪忍受,医生技术差动不动就是挂点滴,还很贵。设施差就不言而喻了。");

strcpy(TD[4].briefinfo,"第二栋宿舍楼,人文学院的宿舍楼公安队的多,好像跟三栋差不多一样破。");

strcpy(TD[5].briefinfo,"春晖楼,目前铁大的门面,最高的楼,这里是很多学院办公的地方学校的各个办事处也都设在这栋楼里。");

strcpy(TD[6].briefinfo,"开元楼,对此楼不甚了解,听说是19xx年所建,开元楼顾名思义学校开元的时候所建。里面住着些什么人不太清楚");

strcpy(TD[7].briefinfo,"招待所,外来人可以住宿吃饭的地方不过超级贵");

strcpy(TD[8].briefinfo,"第十二栋宿舍楼,貌似里面全是土木学院的学生");

strcpy(TD[9].briefinfo,"第十三栋宿舍楼,女生宿舍楼,不过楼下男生较多(不解释)。");

strcpy(TD[10].briefinfo,"青春苑,一二楼又名综合餐厅,一楼价钱还可以,做的饭勉强凑合,二楼很贵,饭也比较难吃。(本人很少

课程设计:校园导游系统

去)");

strcpy(TD[11].briefinfo,"篮球场一,平常当然打篮球的比较多了,不过也是搞露天活动的绝佳之地。");

strcpy(TD[12].briefinfo,"泽园,这里有伟大的毛泽东像(泽园的名字就这么来的?我不是很清楚),毛泽东前面貌似是大家都称之为风口地方,泽园里有个情人约会的绝佳地方。");

strcpy(TD[13].briefinfo,"大礼堂,举办大型联欢活动的地儿,(据说要花钱),每周六放映电影(要门票3元)。");

strcpy(TD[14].briefinfo,"第一实验楼,这里还包含一个综合楼可以上课自习,实验楼里全都是物理实验室。");

strcpy(TD[15].briefinfo,"翠园,早上学生朗读英语,晚上情人幽会的地方,有核桃树唉。");

strcpy(TD[16].briefinfo,"沁园,基本同翠园,不过有喷泉,也不怎么喷水,也就学校有个什么大事才冒出几点水来,好像天天喷水会浪费多少水电似的。有个很大的钟。");

strcpy(TD[17].briefinfo,"第二教学楼,此楼虽新但建筑不怎么地,功能基本同一教,不过五楼没有语音室");

strcpy(TD[18].briefinfo,"工程训练中心,机械院的学生实习的场所,其他院工业认知实习时也会在此。里面有个很出名的风功能研究中心。");

strcpy(TD[19].briefinfo,"第三教学楼,全是阶梯教室,不提供自习室。");

课程设计:校园导游系统

strcpy(TD[20].briefinfo,"西操场,分为两部分,南边是轮滑场(却有很多人在此学开车),北边是篮球场人那叫一个多。");

strcpy(TD[21].briefinfo,"体育馆,没怎么进去过,因为要花钱啊,貌似里面也不怎么地。");

strcpy(TD[22].briefinfo,"游泳教学场,只有夏天开放包括暑假好像是赚钱的进去太贵,我都是上课安排时才进去,人也是那叫一个多。");

strcpy(TD[23].briefinfo,"大操场,本校所有学生上体育课的地方,早晚开放可以跑步。");

strcpy(TD[24].briefinfo,"图书馆,藏书较多,不过比较旧但是很有价值;二楼电子阅览室;一楼有打印室。");

strcpy(TD[25].briefinfo,"第二实验楼,此乃本院的楼(信息学院)。我们都称之为破楼,学生办理校园卡的地方。(好像快要拆了)");

strcpy(TD[26].briefinfo,"第五教学楼,研究生上课的教学楼,里面上自习的全是要考研的学生,貌似研究生不上自习?(不解释)");

strcpy(TD[27].briefinfo,"教学实验楼(建设中),此楼功能待定。");

strcpy(TD[28].briefinfo,"第五栋宿舍楼,好像经济管理学院男生居多,其他不清楚。");

strcpy(TD[29].briefinfo,"第四栋宿舍楼,男生宿舍楼,研究生。

课程设计:校园导游系统

");

strcpy(TD[30].briefinfo,"研究生宿舍楼,研究生女生宿舍楼。"); strcpy(TD[31].briefinfo,"第六栋宿舍楼,此宿舍楼很出名,破的出名,楼下男生也较多(不解释)。");

strcpy(TD[32].briefinfo,"第七栋宿舍楼,电气院男生的天地。"); strcpy(TD[33].briefinfo,"第八栋宿舍楼,这里谁们住就不知道了,反正是男生宿舍楼。");

strcpy(TD[34].briefinfo,"第二三食堂,学校的食堂,饭菜较便宜,就是不怎么好吃,不过也是大多数人的天堂。");

strcpy(TD[35].briefinfo,"第九栋宿舍楼,本人宿舍楼,也是全校最大的宿舍楼,整栋楼呈现为一本展开的书。人比较杂,土木的信息的建艺的等等等等");

strcpy(TD[36].briefinfo,"篮球场二,人也比较多。");

strcpy(TD[37].briefinfo,"消费合作社,学校唯一可以买生活日用品的地方,较贵。功能很齐全。");

strcpy(TD[38].briefinfo,"第三实验楼,电气院的实验楼主要是一些单片机或模拟电子技术方面的实验室。");

strcpy(TD[39].briefinfo,"机械工程学院,机械院的办公之地。"); strcpy(TD[40].briefinfo,"第九实验楼,全校的网络中心,有很多机房,也是本程序的诞生之地,另一半貌似是建筑艺术的实验室。");

strcpy(TD[41].briefinfo,"樱花林,不了解。");

课程设计:校园导游系统

strcpy(TD[42].briefinfo,"交通事故应急中心,新盖的楼,里面功能太多了,很多院要在此办公。");

strcpy(TD[43].briefinfo,"洗浴中心,学校洗澡的地方,感觉蛮实惠的。");

strcpy(TD[44].briefinfo,"开水房,唯一的开水房,人多。"); strcpy(TD[45].briefinfo,"第一栋宿舍楼,女生天堂。");

strcpy(TD[46].briefinfo,"第十栋宿舍楼,男生宿舍楼,材料院的居多。");

strcpy(TD[47].briefinfo,"第十一栋宿舍楼,男生宿舍楼,机械院的居多。");

strcpy(TD[48].briefinfo,"第十五栋宿舍楼,新盖女生宿舍楼也是女生天堂啊。");

strcpy(TD[49].briefinfo,"学校小门,与招待所相距较近,平时学生外出只要不坐车都从此门出入。");

return TD;}

edge **InitLength(edge **path)

{ int i,j;for(i=0;i<MAX;i++)

for(j=0;j<MAX;j++) { path[i][j].length=INFINITY; strcpy(path[i][j].direction,"0");}

//printf("%d\n",path[45][44].length);

path[0][1].length=20;strcpy(path[0][1].direction,"北");

课程设计:校园导游系统

path[1][17].length=50; strcpy(path[1][17].direction,"西");

path[1][2].length=40; strcpy(path[1][2].direction,"东");

path[1][16].length=20; strcpy(path[1][16].direction,"北");

path[1][15].length=30; strcpy(path[1][15].direction,"东北");

path[1][3].length=100; strcpy(path[1][3].direction,"东");

path[17][18].length=40; strcpy(path[17][19].direction,"西");

path[17][19].length=80; strcpy(path[17][19].direction,"北");

path[2][15].length=5; strcpy(path[2][15].direction,"北");

path[2][3].length=20; strcpy(path[2][3].direction,"东");

path[16][15].length=30; strcpy(path[16][15].direction,"东");

path[16][24].length=30; strcpy(path[16][24].direction,"北");

path[16][21].length=40; strcpy(path[16][21].direction,"西");

path[15][14].length=15; strcpy(path[15][14].direction,"东");

path[15][26].length=20; strcpy(path[15][26].direction,"北");

path[3][4].length=10; strcpy(path[3][4].direction,"东");

path[3][7].length=20; strcpy(path[3][7].direction,"南");

path[19][20].length=50; strcpy(path[19][20].direction,"西");

path[24][21].length=20; strcpy(path[24][21].direction,"西");

path[24][25].length=40; strcpy(path[24][25].direction,"东then北"); path[21][19].length=10; strcpy(path[21][19].direction,"西");

path[21][22].length=30; strcpy(path[21][22].direction,"北");

path[14][13].length=50; strcpy(path[14][13].direction,"东");

课程设计:校园导游系统

path[26][27].length=30; strcpy(path[26][27].direction,"东"); path[26][25].length=40; strcpy(path[26][25].direction,"西北"); path[4][5].length=60; strcpy(path[4][5].direction,"东"); path[4][7].length=20; strcpy(path[4][7].direction,"南"); path[4][13].length=60; strcpy(path[4][13].direction,"北"); path[7][49].length=5; strcpy(path[7][49].direction,"南"); path[7][6].length=40; strcpy(path[7][6].direction,"东"); path[6][5].length=50; strcpy(path[6][5].direction,"东");

path[25][38].length=10; strcpy(path[25][38].direction,"北"); path[25][22].length=60; strcpy(path[25][22].direction,"西"); path[22][23].length=50; strcpy(path[22][23].direction,"西"); path[22][39].length=50; strcpy(path[22][39].direction,"北"); path[13][12].length=40; strcpy(path[13][12].direction,"东"); path[13][27].length=10; strcpy(path[13][27].direction,"北"); path[27][14].length=20; strcpy(path[27][14].direction,"南"); path[27][12].length=100; strcpy(path[27][12].direction,"东"); path[5][8].length=40; strcpy(path[5][8].direction,"东"); path[5][9].length=40; strcpy(path[5][9].direction,"东"); path[5][12].length=20; strcpy(path[5][12].direction,"北"); path[38][40].length=50; strcpy(path[38][40].direction,"北"); path[38][37].length=100; strcpy(path[38][37].direction,"东"); path[38][22].length=60; strcpy(path[38][22].direction,"西");

课程设计:校园导游系统

path[39][40].length=30;strcpy(path[39][40].direction,"东"); path[12][28].length=20;strcpy(path[12][38].direction,"北"); path[12][11].length=20;strcpy(path[12][11].direction,"东"); path[12][29].length=20;strcpy(path[12][29].direction,"北"); path[8][9].length=10;strcpy(path[8][9].direction,"北"); path[9][10].length=60;strcpy(path[9][10].direction,"北"); path[9][11].length=50;strcpy(path[9][11].direction,"西北"); path[40][42].length=30;strcpy(path[40][42].direction,"东"); path[40][41].length=50;strcpy(path[40][41].direction,"东南"); path[37][44].length=20;strcpy(path[37][44].direction,"东北"); path[37][36].length=20;strcpy(path[37][36].direction,"东"); path[28][33].length=20;strcpy(path[28][33].direction,"北"); path[28][29].length=10;strcpy(path[28][29].direction,"东"); path[11][29].length=20;strcpy(path[11][29].direction,"北"); path[11][30].length=50;strcpy(path[11][30].direction,"东北"); path[29][32].length=20;strcpy(path[29][32].direction,"北"); path[29][30].length=40;strcpy(path[29][30].direction,"东"); path[10][30].length=50;strcpy(path[10][30].direction,"北"); path[42][41].length=40;strcpy(path[42][41].direction,"南"); path[41][37].length=50;strcpy(path[41][37].direction,"东"); path[44][43].length=30;strcpy(path[44][43].direction,"北"); path[44][36].length=5;strcpy(path[44][36].direction,"东");

课程设计:校园导游系统

path[36][45].length=30;strcpy(path[36][45].direction,"北"); path[36][35].length=50;strcpy(path[36][35].direction,"东"); path[33][35].length=40;strcpy(path[33][35].direction,"北"); path[33][32].length=10;strcpy(path[33][32].direction,"东"); path[30][31].length=20;strcpy(path[30][31].direction,"北"); path[32][31].length=30;strcpy(path[32][31].direction,"东"); path[43][45].length=20;strcpy(path[43][45].direction,"东北"); path[45][47].length=20;strcpy(path[45][47].direction,"东"); path[35][47].length=20;strcpy(path[35][47].direction,"西北"); path[35][46].length=20;strcpy(path[35][46].direction,"东北"); path[35][34].length=30;strcpy(path[35][34].direction,"东"); path[31][34].length=5;strcpy(path[31][34].direction,"北"); path[47][46].length=10;strcpy(path[47][46].direction,"东"); path[46][48].length=20;strcpy(path[46][48].direction,"东"); path[48][34].length=20;strcpy(path[48][34].direction,"南"); path[1][0].length=20;strcpy(path[1][0].direction,"南"); path[17][1].length=50; strcpy(path[17][1].direction,"东"); path[2][1].length=40; strcpy(path[2][1].direction,"西"); path[16][1].length=20; strcpy(path[16][1].direction,"南"); path[15][1].length=30; strcpy(path[15][1].direction,"西南"); path[3][1].length=100; strcpy(path[3][1].direction,"西");

path[18][17].length=40; strcpy(path[18][17].direction,"东");

课程设计:校园导游系统

path[19][17].length=80; strcpy(path[19][17].direction,"南");

path[15][2].length=5; strcpy(path[15][2].direction,"南");

path[3][2].length=20; strcpy(path[3][2].direction,"西");

path[15][16].length=30; strcpy(path[15][16].direction,"西");

path[24][16].length=30; strcpy(path[24][16].direction,"南");

path[21][16].length=40; strcpy(path[21][16].direction,"东");

path[14][15].length=15; strcpy(path[14][15].direction,"西");

path[26][15].length=20; strcpy(path[26][15].direction,"南");

path[4][3].length=10; strcpy(path[4][3].direction,"西");

path[7][3].length=20; strcpy(path[7][3].direction,"北");

path[20][19].length=50; strcpy(path[20][19].direction,"东");

path[21][24].length=20; strcpy(path[21][24].direction,"东");

path[25][24].length=40; strcpy(path[25][24].direction,"西then南"); path[19][21].length=10; strcpy(path[19][21].direction,"东");

path[22][21].length=30; strcpy(path[22][21].direction,"南");

path[13][14].length=50; strcpy(path[13][14].direction,"西");

path[27][26].length=30; strcpy(path[27][26].direction,"西");

path[25][26].length=40; strcpy(path[25][26].direction,"东南"); path[5][4].length=60; strcpy(path[5][4].direction,"西");

path[7][4].length=20; strcpy(path[7][4].direction,"北");

path[13][4].length=60; strcpy(path[13][4].direction,"南");

path[49][7].length=5; strcpy(path[49][7].direction,"北");

课程设计:校园导游系统

path[6][7].length=40; strcpy(path[6][7].direction,"西"); path[5][6].length=50; strcpy(path[5][6].direction,"西");

path[38][25].length=10; strcpy(path[38][25].direction,"南"); path[22][25].length=60; strcpy(path[22][25].direction,"东"); path[23][22].length=50; strcpy(path[23][22].direction,"东"); path[39][22].length=50; strcpy(path[39][22].direction,"南"); path[12][13].length=40; strcpy(path[12][13].direction,"西"); path[27][13].length=10; strcpy(path[27][13].direction,"南"); path[14][27].length=20; strcpy(path[14][27].direction,"北"); path[12][27].length=100; strcpy(path[12][27].direction,"西"); path[8][5].length=40; strcpy(path[8][5].direction,"西"); path[9][5].length=40; strcpy(path[9][5].direction,"西"); path[12][5].length=20; strcpy(path[12][5].direction,"南"); path[40][38].length=50; strcpy(path[40][38].direction,"南"); path[37][38].length=100; strcpy(path[37][38].direction,"西"); path[22][38].length=60; strcpy(path[22][38].direction,"东"); path[40][39].length=30;strcpy(path[40][39].direction,"西"); path[28][12].length=20;strcpy(path[28][12].direction,"南"); path[11][12].length=20;strcpy(path[11][12].direction,"西"); path[29][12].length=20;strcpy(path[29][12].direction,"南"); path[9][8].length=10;strcpy(path[9][8].direction,"南"); path[10][9].length=60;strcpy(path[10][9].direction,"南");

课程设计:校园导游系统

path[11][9].length=50;strcpy(path[11][9].direction,"东南"); path[42][40].length=30;strcpy(path[42][40].direction,"西"); path[41][40].length=50;strcpy(path[41][40].direction,"西北"); path[44][37].length=20;strcpy(path[44][37].direction,"西南"); path[36][37].length=20;strcpy(path[36][37].direction,"西"); path[33][28].length=20;strcpy(path[33][28].direction,"南"); path[29][28].length=10;strcpy(path[29][28].direction,"西"); path[29][11].length=20;strcpy(path[29][11].direction,"南"); path[30][11].length=50;strcpy(path[30][11].direction,"西南"); path[32][29].length=20;strcpy(path[32][29].direction,"南"); path[30][29].length=40;strcpy(path[30][29].direction,"西"); path[30][10].length=50;strcpy(path[30][10].direction,"南"); path[41][42].length=40;strcpy(path[41][42].direction,"北"); path[37][41].length=50;strcpy(path[37][41].direction,"西"); path[43][44].length=30;strcpy(path[43][44].direction,"南"); path[36][44].length=5;strcpy(path[36][44].direction,"西"); path[45][36].length=30;strcpy(path[45][36].direction,"南"); path[35][36].length=50;strcpy(path[35][36].direction,"西"); path[35][33].length=40;strcpy(path[35][33].direction,"南"); path[32][33].length=10;strcpy(path[32][33].direction,"西"); path[31][30].length=20;strcpy(path[31][30].direction,"南"); path[31][32].length=30;strcpy(path[31][32].direction,"西");

课程设计:校园导游系统

path[45][43].length=20;strcpy(path[45][43].direction,"西南"); path[47][45].length=20;strcpy(path[47][45].direction,"西");

path[47][35].length=20;strcpy(path[47][35].direction,"东南"); path[46][35].length=20;strcpy(path[46][35].direction,"西南"); path[34][35].length=30;strcpy(path[34][35].direction,"西");

path[34][31].length=5;strcpy(path[34][31].direction,"南");

path[46][47].length=10;strcpy(path[46][47].direction,"西");

path[48][46].length=20;strcpy(path[48][46].direction,"西");

path[34][48].length=20;strcpy(path[34][48].direction,"北");

return path;}

void browser(){//全景图,1

system("fei\\t.jpg");Sleep(1000); }

void onetoall(PathMatrix P,DistancMatrix D,view *TD,edge **path) //计算某一景点到所有景点的最短路径

{int v,w,w1,i,j,min,t=0,x,flag=1,v0;

int final[MAX];// D[20], p[20][20];

while(flag)

{printf("请输入一个起始景点编号:");

scanf("%d",&v0); if(v0<0||v0>MAX) {printf("景点编号不存在!请重新输入景点编号:"); scanf("%d",&v0);

课程设计:校园导游系统

}if(v0>=0&&v0<MAX)flag=0;}

for(v=1;v<MAX;v++)

{ final[v]=0; D[v]=path[v0][v].length; for(w=1;w<MAX;w++)P[v][w]=0;

if(D[v]<INFINITY){P[v][v0]=1;P[v][v]=1; }} D[v0]=1;final[v0]=1;

for(i=1;i<MAX;i++)

{ min=INFINITY;

for(w=1;w<MAX;w++) if(!final[w]) if(D[w]<min){v=w;min=D[w];} final[v]=1; for(w=1;w<MAX;w++) if(!final[w]&&(min+path[v][w].length<D[w])) { D[w]=min+path[v][w].length; for(x=0;x<MAX;x++) P[w][x]=P[v][x]; P[w][w]=1;}}

for(v=1;v<MAX;v++)

{if(v!=v0)

{printf("%s",TD[v0].name); w1=v0;

课程设计:校园导游系统

}else continue; do {flag=0;min=INFINITY; for(w=1;w<MAX;w++) {if(P[v][w]&&w!=v0) { flag=1; if(D[w]<min){j=w;min=D[w];} }}if(flag) {

printf("向%s走%dm",path[w1][j].direction,path[w1][j].length);

printf("-->%s",TD[j].name); w1=j; P[v][j]=0; }else break; }while(1); printf("\n 总路线长%dm\n\n",D[v]);

}printf("完毕,按任意键继续!\n");

getch();}

void onetoone(PathMatrix P,DistancMatrix D,view *TD,edge **path)// 计算任意两个景点之间的最短路径{

int v,w,w1,i,j,v1,min,t=0,x,flag=1,v0;

int final[MAX];// D[20], p[20][20];

while(flag){

printf("请输入一个起始景点编号:"); scanf("%d",&v0); if(v0<0||v0>MAX) {printf("景点编号不存在!请重新输入景点编号:"); scanf("%d",&v0); } if(v0>=0&&v0<MAX)flag=0; }

课程设计:校园导游系统

flag=1; while(flag) {

printf("请输入一个目的地景点编号:"); scanf("%d",&v1); if(v1<0||v1>MAX){ printf("景点编号不存在!请重新输入景点编号:"); scanf("%d",&v1); } if(v1>=0&&v1<MAX) flag=0; }for(v=0;v<MAX;v++) { final[v]=0; D[v]=path[v0][v].length; for(w=0;w<MAX;w++) P[v][w]=0; if(D[v]<INFINITY){ P[v][v0]=1;P[v][v]=1; }} D[v0]=0;final[v0]=1;

for(i=1;i<MAX;i++)

{ min=INFINITY;

for(w=0;w<MAX;w++) if(!final[w]) if(D[w]<min){v=w;min=D[w];} final[v]=1; for(w=0;w<MAX;w++) if(!final[w]&&(min+path[v][w].length<D[w])) { D[w]=min+path[v][w].length; for(x=0;x<MAX;x++)

课程设计:校园导游系统

P[w][x]=P[v][x];P[w][w]=1;}} v=v1; w1=v0; printf("%s",TD[v0].name);

do { flag=0;min=INFINITY;

for(w=0;w<MAX;w++) {if(P[v][w]&&w!=v0) { flag=1;if(D[w]<min){j=w;min=D[w];} }} if(flag) {

printf("向%s走%dm",path[w1][j].direction,path[w1][j].length);

printf("-->%s",TD[j].name); w1=j; P[v][j]=0; } else break; }while(1);

printf("\n 总路线长%dm\n\n",D[v]);

printf("完毕,按任意键继续!\n");

getch();}

void browse_view_info(view *TD)

{//查看简介,2

int scape; printf("请输入您想要查看的景点的编号:"); scanf("%d",&scape);

puts(TD[scape].briefinfo);

printf("请按任意键继续!");

getch();}

void browse_view_distribute()

课程设计:校园导游系统

{//查看景点分布图,3

printf("

§·∽·∽·∽·∽·∽·∽·∽·∽·∽·∽·∽·∽·∽·∽

·∽·∽·∽·∽·∽·∽·∽·∽·∽·∽·∽·∽·∽ §\n");

printf("§ §\n");

printf("§ 40.九实验楼

15.一食堂━┓ §\n");

printf("§ ┃ ┃ §\n");

printf("§ ┃ ┃ §\n");

printf("§ 23.操场━━22.游泳馆━━━━25.二实验楼━━

━━━━━━━━━━━━━━32. 七栋━━━━━14.二三食堂━

┫ §\n");

printf("§ ┃ ┃ ┃ ┃ §\n");

printf("§ ┃ ┃ ┃ ┃ §\n");

printf("§ 19.三教━━21.体育馆━━━━━24.图书馆 ┃ ┃ §\n");

printf("§ ┃ ┃

课程设计:校园导游系统

┃ ┃ §\n");

printf("§ ┃ ┃ ┃ ┃ §\n");

printf("§ 17.二教━━━━━━1.一教━━━━━

━━━━━━━3.医院━━━━5. 春晖楼━━━━10.青春苑━━┛

§\n");

printf("§ ┃ §\n");

printf("§ 16.大门 §\n");

printf("§ §\n");

printf("

§·∽·∽·∽·∽·∽·∽·∽·∽·∽·∽·∽·∽·∽·∽

·∽·∽·∽·∽·∽·∽·∽·∽·∽·∽·∽·∽·∽ §\n");

printf("请按任意键继续!");

getch();

}

void main()

{

int k,v;

view *TD;

课程设计:校园导游系统

edge **path;PathMatrix P;DistancMatrix D;

path=(edge **)malloc(MAX*sizeof(edge));

for(v=0;v<MAX;v++)

path[v]=(edge *)malloc(1000*sizeof(edge));

TD=(view *)malloc(MAX*sizeof(view));

D=(DistancMatrix )malloc(MAX*sizeof(DistancMatrix)); P=(PathMatrix )malloc(MAX*sizeof(PathMatrix));

for(v=0;v<MAX;++v)

P[v]=(int *)malloc(MAX*sizeof(int *)); Initview(TD); InitLength(path); system("mode con: cols=140 lines=130");

log();while(1){

showmenu();printf("请选择:\n"); scanf("%d",&k);switch(k) {case 1: browser();system("cls");break; case 2: browse_view_info(TD);system("cls");break; case 3: browse_view_distribute();system("cls");break; case 4: onetoall(P,D,TD,path);system("cls");break;

case 5: onetoone(P,D,TD,path); system("cls");break; case 0: exit(0); }}}

更多相关推荐:
C语言程序设计报告

20xx级C课程设计大作业设计报告设计题目餐厅信息管理程序小组参与人员姓名学号专业班级分工姓名学号专业班级分工姓名学号专业班级分工主函数及欢迎界面是一起完成的1题目餐厅服务系统系统功能设计a要求实现客户点菜的过...

c语言程序设计报告

课程设计报告课程名称C语言程序设计课题名称运动会分数统计系统专业机械设计及其自动化班级1185班学号***姓名**指导教师**20XX年6月22日湖南工程学院课程设计任务书课程名称C语言程序设计课题运动会分数统…

c语言程序设计报告

C语言课程设计报告题目小学算术运算测试mathc设计者专业班级学号指导教师20xx年6月21日河南理工大学计算机学院小学算术运算测试mathc计算机学院软件09级C程序设计报告目录1设计任务书211题目与要求2...

C语言程序设计报告

C语言程序设计报告计算机工程学院网络工程魏振豪张平前言略目录略1设计题目要求11题目一元多项式简单的计算器12要求限最多两人完成要体现一元多项式简单计算器的基本功能为方便课可选择使用链表2需求分析和概述21在日...

C语言程序设计报告

C程序设计报告西安科技大学王甲C程序设计报告矩阵运算1学院地质与环境学院专业资源勘查工程姓名王甲学号09010909030119C程序设计报告西安科技大学王甲目录1设计任务书11题目12设计要求13程序涉及的知...

C程序设计上机实验报告6

C程序设计实验报告实验名称函数程序设计学时安排2学时实验类别上机操作型实验要求1人1组一实验目的1熟练掌握函数的定义和调用2熟练掌握使用函数编写程序3掌握函数的实参形参和返回值的概念及使用4掌握单步调试进入函数...

C语言程序设计学生成绩管理系统实验报告

移通学院C语言程序设计报告书设计名称学生成绩管理系统专业指导老师班级姓名学号座号时间一实验目的1在编辑应用程序过程中逐步加深对C语言编程的理解2加强实践的能力动手能力同时进一步对所学的知识进行巩固3培养初步编程...

c语言程序设计课程计算器设计报告

课程设计说明书题目计算器程序设计起讫日期20xx年7月3日至20xx年8月6日所在院系软件学院专业机械软件班级042学生姓名偶偶哦学号指导教师20xx年8月日摘要当今社会是信息社会科技经济高速发展的社会为了更方...

c程序设计报告职工信息管理系统

西南科技大学理学院C程序设计课程设计职工信息管理系统题目要求2设计目的2总体设计2详细设计2调试与测试12源程序14总结27第1页共27页西南科技大学理学院C程序设计课程设计职工信息管理程序一题目要求1问题描述...

C程序设计信号报告例题

题目内容无线电台的RS制信号报告是由三两个部分组成的RReadability信号可辨度即清晰度SStrength信号强度即大小其中R位于报告第一位共分5级用15数字表示1Unreadable2Barelyrea...

_计算机实践_《C/C++语言程序设计》报告

计算机实践CC语言程序设计报告计算机实践CC程序设计报告二一二年十二月廿九日一设计题目1计算机实践CC语言程序设计报告题目名称有1020个西瓜第一天卖一半多两个以后每天卖剩下的一半多两个问几天以后能卖完要求1调...

C语言程序设计 实验报告2.3

C语言程序设计实验报告专业班级日期11月26日成绩实验组别第223次实验指导教师李开学生姓名学号同组人姓名实验名称流程控制实验一实验目的1掌握复合语句if语句switch语句的使用熟练掌握forwhiledow...

c++程序设计报告(35篇)