第十一周

这周除了上课时的课堂内容,其余几乎都在排练,毕竟快比赛了,每晚都要与同学们一起练,累也充实。

这周对数据结构课程比较印象深刻,也加以练习

如下  图的零接矩阵

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

#define INFINITY INT_MAX
#define MAX_VEX_NUM 10
typedef  enum{DG, AG, WDG, WAG}Graph;
typedef int ValType;
typedef struct {        
         ValType ArcVal;
    //InfoType ArcInfo;
} AdjType;
typedef char VexType;
typedef  struct{
    Graph kind;
    int vexnum, arcnum;
    VexType vexs[MAX_VEX_NUM];
    AdjType adj[MAX_VEX_NUM][MAX_VEX_NUM];
}AdjGraph;

int LocateVex(AdjGraph *G, VexType v)
{
    int i;
    for(i=0; i<G->vexnum; i++)
    {
        if(G->vexs[i]==v)
            return i;
    }
    return -1;
}

void CreateDG(AdjGraph *G)/*G->kind=DG*/
{
    int i, j, k;
    VexType v1, v2;

printf("请输入图的顶点数目:");
    scanf("%d", &G->vexnum );

printf("请输入弧的数目:");
    scanf("%d", &G->arcnum );

printf("请输入顶点信息:");
    for(i=0; i<G->vexnum; i++)
    {    fflush(stdin);
        scanf("%c", &G->vexs[i]);
    }

/*初始化邻接矩阵*/
    for(i=0; i<G->vexnum; i++)
        for(j=0; j<G->vexnum; j++)
            G->adj[i][j].ArcVal=INFINITY;

printf("构建邻接矩阵,请输入一条弧的起点和终点,例如\"a,b\"\n");
    for(k=0; k<G->arcnum; k++)
    {
    printf("第%d-%d条:", G->arcnum, k+1);
        fflush(stdin);
        scanf("%c,%c", &v1, &v2);
        i=LocateVex(G, v1);
        j=LocateVex(G, v2);
        G->adj[i][j].ArcVal=1;
    }
}

void main()
{
    AdjGraph G;
    G.kind=DG;
    CreateDG(&G);

int i, j;    
    printf("输出图的邻接矩阵:\n");
    for(i=0; i<G.vexnum; i++)
    {    for(j=0; j<G.vexnum; j++)
            printf("%14d", G.adj[i][j].ArcVal);
        printf("\n");
    }
}

时间: 2024-11-04 11:53:31

第十一周的相关文章

第十一周PSP&amp;进度条

PSP 一.表格: D日期     C类型 C内容 S开始时间 E结束时间 I时间间隔 T净时间(mins) 预计花费时间(mins) 11月24号 站立会议 分配任务&设计final方案 13:00 13:30 0 30 30   编写 bug修正报告 14:35 15:14 0 39 40 11月25号 站立会议 继续完成没完成任务 13:00 13:30 0 30 30   编码 新亮点 14:45 18:23 21 207 180   数据 数据收集整理 19:21 20:48 13  

20145216史婧瑶《信息安全系统设计基础》第十一周学习总结

20145216史婧瑶<信息安全系统设计基础>第十一周学习总结 教材内容总结 第八章 异常控制流 平滑:指在存储器中指令都是相邻的. 突变:出现不相邻,通常由诸如跳转.调用.和返回等指令造成. 异常控制流ECF:即这些突变. 关于ECF: 1.ECF是操作系统用来实现I/O.进程和虚拟存器的基本机制 2.应用程序通过使用一个叫做陷阱或者系统调用的ECF形式,向操作系统请求服务 3.ECF是计算机系统中实现并发的基本机制 4.软件异常机制--C++和Java有try,catch,和throw,C

第十周、第十一周学习总结

第十周.第十一周学习总结 ——王林 学科 WEB 数据结构 计算机网络基础 进度 第15章的后半部分.第十六章 第六章后半部分 项目5 主要内容 第十周首先主要学习了JavaScript的内置对象.其次第十一周为详细学习JS的字符串对象.数值处理对象.数组对象等,JS的综合运用实例以及JS对象编程与事件处理. 两周内,进行了对钱一周树的学习——树的定义.基本术语.树的双亲.孩子.兄弟表示法及实现.二叉树等. 两周内,计算机网络基础主要学习了路由器的相关概述,包括了解路由协议到配置路由器的动手实践

第十一周学习总结

信息安全系统设计基础第十一周学习总结 [学习时间:8h] [学习内容:<深入理解计算机系统>第八章 ] 一.知识梳理 8.1节(主要涉及异常的入门级介绍) 1.异常控制流(ECF) 概念:最简单的“平滑序列”类型的控制流是指PC中相邻的指令在存储器中也相邻.而异常控制流则是指程序变量表示的内部程序状态中的变化.系统状态的变化等突发情况使得控制系统做出的反映. 作用: 应用程序如何与操作系统实现交互.应用程序使用系统调用(system call)的ECF形式向操作系统请求服务: 实现并发的基本机

第十一周项目1

#include <iostream> using namespace std; class Stu { public: Stu (int n,string nam); void display(); protected: int num; //学号 string name; //姓名 }; Stu::Stu(int n,string nam ) { num=n; name=nam; } void Stu::display() { cout<<"学号:"<

十一周 存储班长信息的学生类

#include <iostream> using namespace std; class Stu //声明基类 { public: Stu(int n, string nam ); //基类构造函数 void display( ); //成员函数,输出基类数据成员 protected: //(*)访问权限为保护型的数据成员 int num; //学生学号 string name; //学生姓名 }; class StuDetail: public Stu //声明派生类StuDetail

第十一周进度条

第十一周学习进度条   星期一 星期二 星期三 星期四 星期五 星期六 星期日 所花时间 (包括上课) 无 上午8:00-9:50 晚上7:00-11:30 下午3:00-11:30 晚上7:00-1:30 无 早上8:00-晚上2:00 代码量(行) 0行 900行 2000行 2000行 0行 4000行 博客量(篇) 0篇 1篇 0篇 0行 0篇 2篇 了解到的知识点 无 上完课后一直在想业务用例的问题,但是还是没有很是想明白1.业务用例的最大的好处是什么,待地该怎样设计用例 下课后就一直

第十一周学习进度条

第十一周 星 期 一 星期二 星期三 星期四 星期五 星期六 所花时间 8:00-9:50 (上课时间) 17:30-18:40 (阅读UML大战需求分析) 10:20-11:30写征集系统大作业 20:20-21:10 (分析征集系统用例) 15:30-17:00 写征集系统大作业 19:30-11:30 写征集系统大作业 代码量 50 博客量 1 了解到的知识点 1.用例描述的三个要点:内容.好处.度量. 2.业务用例描述的步骤:识别执行者.识别业务用例.写出业务用例. 3.执行者:边界之外

20145321 《信息安全系统设计基础》第十一周学习总结

20145321 <信息安全系统设计基础>第十一周学习总结 代码实践 exec1.c 程序代码 #include <stdio.h> #include <unistd.h> int main() { char *arglist[3]; arglist[0] = "ls"; arglist[1] = "-l"; arglist[2] = 0 ;//NULL printf("* * * About to exec ls -l

十一周 项目三 点类

#include<iostream> #include<Cmath> using namespace std; class Point //定义坐标点类 { public: Point():x(0),y(0) {}; Point(double x0, double y0):x(x0),y(y0){}; void PrintPoint(); //输出点的信息 double getx() { return x; } double gety() { return y; } protect