精华内容
下载资源
问答
  • 数据结构课程里的抽象数据类型实现,最难的一个 图的抽象数据类型实现 老师给了优秀 做了5天的成果
  • 数据结构课要完成的综合实验---抽象数据类型.在上面搜了一下,别人要求的资源分太高了,所以自己做一个.传了上来,有错请指证!!
  • 图的抽象数据类型实现 数据结构实验 广工 链表实现
  • 正文:用C语言来进行复数的抽象数据类型实现,代码如下: #include #include typedef struct Complex { float real; float image; }Complex; int lnitComplex(Complex &C,float vr,float vi) { C.real=vr;

    摘要:C语言 数据结构 抽象数据类型 顺序结构

    正文:用C语言来进行复数的抽象数据类型实现,代码如下:

    #include<stdio.h>
    #include<stdlib.h>
    typedef struct Complex
    {
    float real;
    float image;
    }Complex;
    int lnitComplex(Complex &C,float vr,float vi)
    {
    C.real=vr;
    C.image=vi;
    return 1;
    }
    void OutComplex(Complex &C)
    {
    printf("%f+%fi\n",C.real,C.image);
    }
    Complex AddComplex(Complex &add,Complex C1,Complex C2)
    {
    add.real=C1.real+C2.real;
    add.image=C1.image+C2.image;
    return add;
    }
    Complex SubComplex(Complex &sub,Complex C1,Complex C2)
    {
    sub.real=C1.real-C2.real;
    sub.image=C1.image-C2.image;
    return sub;
    }
    Complex MulComplex(Complex &mul,Complex C1,Complex C2)
    {
    mul.real=((C1.real*C2.real)-(C1.image*C2.image));
    mul.image=((C1.real*C2.image)+(C1.image*C2.real));
    return mul;
    }
    int main()
    {
    int choice;
    Complex C,add,sub,mul,C1,C2;
    float a,b,a1,b1;
    printf("********************\n");
    printf("1.输入复数C1\n");
    printf("2.输入复数C2\n");
    printf("3.输出复数C1\n");
    printf("4.输出复数C2\n");
    printf("5.C1和C2的和为\n");
    printf("6.C1和C2的差为\n");
    printf("7.C1和C2的积为\n");
    printf("0.结束程序\n");
    printf("********************\n");
    for(;;)
    {
    scanf("%d",&choice);
    switch(choice)
    {
    case 1:
    scanf("%f,%f",&a,&b);
    if(b==0)
    {
    printf("虚部不能为0");
    exit(0);
    }
    else
    {
    lnitComplex(C1,a,b);
    printf("输入完成\n");
    }
    break;
    case 2:
    scanf("%f,%f",&a1,&b1);
    if(b==0)
    {
    printf("虚部不能为0\n");
    exit(0);
    }
    else
    {
    lnitComplex(C2,a,b);
    printf("输入完成\n");
    }
    break;
    case 3:
    OutComplex(C1);
    break;
    case 4:
    OutComplex(C2);
    break;
    case 5:
    AddComplex(add,C1,C2);
    OutComplex(add);
    break;
    case 6:
    SubComplex(sub,C1,C2);
    OutComplex(sub);
    break;
    case 7:
    MulComplex(mul,C1,C2);
    OutComplex(mul);
    break;
    case 0:
    exit(0);
    }
    }
    return 0;
    }



    编译结果如图:


    展开全文
  • 图的抽象数据类型实现和数据结构课程设计 打包一起的 一起花了十几天做的 里面什么都有了 实验报告 可执行文件 源代码 老师两个都给了优秀
  • 实验项目名称: 抽象数据类型实现 实验项目性质: 设计性实验 所属课程名称: 数据结构 以教材中讨论的各种抽象数据类型为对象,利用C语言的数据类型表示和实现其中某个抽象数据类型。 本资源包括了可执行文件、源...
  • typedef struct Complex //定义结构体类型Complex { float real; //实部 float image; //虚部 }Complex; Complex InitComplex(float a,float b)/*给复数的实部和虛部复制,并返回复数。*/ { Complex c; c....

    运行结果
    在这里插入图片描述

    #include<stdio.h>
    #include<stdlib.h> //头文件 
    typedef struct Complex   //定义结构体类型Complex 
    {
        float real;  //实部 
        float image;   //虚部 
    }Complex;
    Complex InitComplex(float a,float b)/*给复数的实部和虛部复制,并返回复数。*/
    {
        Complex c;
        c.real=a;
        c.image=b;
        return c;
    } 
     Complex Add(Complex c1,Complex c2)   //加法 
     {
     	  Complex sum;
        sum.real=c1.real+c2.real;
        sum.image=c1.image+c2.image;
        return sum;
     }
    
    Complex Sub(Complex c1,Complex c2)  //减法 
    {
        Complex dif; 
        dif.real=c1.real-c2.real;
        dif.image=c1.image-c2.image;
       	return dif;
        
    }
    Complex Mul(Complex c1,Complex c2)   //乘法 
    {
        Complex product;
        product.real=c1.real*c2.real-c1.image*c2.image;
        product.image=c1.real*c2.image+c1.image*c2.real;
        return product;
    }
    float GetReal(Complex c)
      {/*取复数实部*/
           return c.real;
      }
       float GetImag(Complex c)
      { /*取复数虚部*/
           return c.image;
      } 
        void Print_C(Complex c)
    	{/*复数输出*/
         	if(GetImag(c)==0.0)   printf("%5.2f\n",GetReal(c));
        	else if(GetReal(c)==0.0)  printf("%5.2fi\n",GetImag(c));
            	else  printf("%5.2f+%5.2fi\n",GetReal(c),GetImag(c));
    	}
    int main(void)
    {
    	 Complex z1,z2,sum,dif,pro;   //z1复数1,z2复数2,sum和,dif差,pro积 
    	   float e1,e2,e3,e4;   //e1、e3实部,e2、e4虚部 
    	   int a[2],b[2];//存储实部、虚部和结果
    	 printf("输入第1个复数\nz1=");   //提示输入第一个复数 
    	   scanf("%f+%fi",&e1,&e2);
    	   z1=InitComplex(e1,e2);/***********提示输入复数z1,并存入变量中。*/
    	 
    	   printf("输入第2个复数\nz2=");
    	   scanf("%f+%fi",&e3,&e4);
    	   z2=InitComplex(e3,e4);/*****提示输入复数z2,并存入变量中。*/
    	   sum=Add(z1,z2);Print_C(sum);  //显示求和的结果 
    	   dif=Sub(z1,z2);Print_C(dif);   //显示求差的结果 
    	   pro=Mul(z1,z2);Print_C(pro);   //显示求积的结果 
    	   
    	printf("请输入第3个复数的实部和虚部:\n"); 
        scanf("%d%d",&a[0],&b[0]);
    	printf("您输入的复数为%d+%di\n",a[0],b[0]);
    	
    	printf("请输入第4个复数:\n"); 
    		scanf("%d+%di",&a[1],&b[1]);
    		printf("第4个复数的实部是:%d\n",a[1]);
    		printf("第4个复数的虚部是:%d\n",b[1]);
    
    }
    
    

    数据结构抽象数据类型复数的运算实验一

    展开全文
  • 复数的抽象数据类型实现(指针)

    千次阅读 2017-10-28 11:12:24
    摘要:C语言 数据结构

    摘要:C语言  数据结构 

    正文:这是运用指针来进行复数的抽象数据类型实现,代码如下;

    #include<stdio.h>
    #include<stdlib.h>
    typedef struct Complex
    {
    float real;
    float image;
    }Complex;
    int lnitComplex(Complex *p,float vr,float vi)
    {
    p->real=vr;
    p->image=vi;
    return 1;
    }
    void OutComplex(Complex C)
    {
    printf("%f+%fi",C.real,C.image);
    }
    Complex AddComplex(Complex *p,Complex C1,Complex C2)
    {
    p->real=C1.real+C2.real;
    p->image=C1.image+C2.image;
    return *p;
    }
    Complex SubComplex(Complex *p,Complex C1,Complex C2)
    {
    p->real=C1.real-C2.real;
    p->image=C1.image-C2.image;
    return *p;
    }
    Complex MulComplex(Complex *p,Complex C1,Complex C2)
    {
    p->real=((C1.real*C2.real)-(C1.image*C2.image));
    p->image=((C1.real*C2.image)+(C1.image*C2.real));
    return *p;
    }
    int main()
    {
    int choice;
    float a,b;
    Complex C,C1,C2;
    printf("*********************\n");
    printf("1.输入复数C1\n");
    printf("2.输入复数C2\n");
    printf("3.输出复数C1\n");
    printf("4.输出复数C2\n");
    printf("5.C1和C2的和为\n");
    printf("6.C1和C2的差为\n");
    printf("7.C1和C2的积为\n");
    printf("0.结束程序\n");
    printf("**********************\n");
    for(;;)
    {
    printf("请输入选项:\n");
    scanf("%d",&choice);
    switch(choice)
    {
    case 1:
    printf("请输入实部虚部:\n");
    scanf("%f,%f",&a,&b);
    lnitComplex(&C1,a,b);
    break;
    case 2:
    printf("请输入实部虚部:\n");
    scanf("%f,%f",&a,&b);
    lnitComplex(&C2,a,b);
    break;
    case 3:
    OutComplex(C1);
    break;
    case 4:
    OutComplex(C2);
    break;
    case 5:
    AddComplex(&C,C1,C2);
    OutComplex(C);
    break;
    case 6:
    SubComplex(&C,C1,C2);
    OutComplex(C);
    break;
    case 7:
    MulComplex(&C,C1,C2);
    OutComplex(C);
    break;
    case 0:
    exit(0);

    }
    }
    }




    编译结果如图:



    展开全文
  • 实现抽象数据类型:二叉查找树。 要求:实现下列操作:构造空表、销毁表、搜索指定关键字的元素、插入新元素、删除指定关键字的元素、遍历表中所有元素
  • 抽象数据类型(三元组ADT、复数四则运算) 数据结构 湖南大学
  • 二叉树的基本功能: 1、二叉树的建立 2、前序遍历二叉树 3、中序遍历二叉树 4、后序遍历二叉树 5、按层序遍历二叉树 6、求二叉树的深度 7、求指定结点到根的路径 8、二叉树的销毁 9、其他:自定义操作
  • 实验一:抽象数据类型实现

    千次阅读 2018-07-02 21:11:31
    实验一:抽象数据类型实现一、实验目的:了解抽象数据类型的表示和实现方法会用C语言中已存在的数据类型来说明新的结构。能用已实现的操作来组合新的操作。熟悉C语言的程序设计二、实验内容输入圆的半径,输出圆的...


    一、实验目的:

    了解抽象数据类型的表示和实现方法

    会用C语言中已存在的数据类型来说明新的结构。

    能用已实现的操作来组合新的操作。

    熟悉C语言的程序设计

    二、实验内容

    输入圆的半径,输出圆的面积和周长。

    设计一个圆的抽象数据类型,并定义求圆的面积和周长的两个操作,输入数据是圆的半径r,圆的面积S=πr2,圆的周长L=2πr。

    三、实验步骤

    1、启动VC++6.0

    2、

     

     3、输入程序

    (1)adt.h

    typedef struct circle{

    float r;

    float area;

    float peri;

    }*Circle;

    float area(Circle c);

    float peri(Circle c);

    (2)adt.cpp

    #include <stdio.h>

    #include "adt.h"

    float area(Circle c){

    c->area =3.14*c->r *c->r ;

    return c->area;

    }

    float peri(Circle c){

    c->peri=2*3.14*c->r;

    return c->peri;

    }

    (3)adtmain.cpp

    #include<stdio.h>

    #include "adt.h"

    void main(){

    struct circle a;

    printf("请输入半径:\n");

    scanf("%f",&a.r );

    printf("the area=%f\n",area(&a));

    printf("the peri=%f\n",peri(&a));

    }

    4、运行程序、查错。

    展开全文
  • 1.3抽象数据类型的表示与实现

    千次阅读 多人点赞 2015-12-06 15:00:54
    记得大二的时候学习严蔚敏大神的《数据结构》,满本书的抽象结构,抽象这个,抽象那个,直接整蒙了。最困难的就是概念本来就晦涩难懂,而且书里面也没有可以直接运行的代码,真头疼。好在最近发现高一凡编写的《数据...
  • 设计实现抽象数据类型“复数” 实现复数的加法、减法、乘法,以及求复数的实部、虚部等基本操作。
  • 功能有初始化,求最大值,最小值,按升序排序、按降序排序等等
  • C实现稀疏矩阵抽象数据类型
  • C语言实现抽象数据类型(ADT)

    千次阅读 多人点赞 2020-12-22 20:49:02
    C语言实现抽象数据类型(ADT)什么是抽象数据类型(ADT)C语言通过怎样的方式来实现ADT举例前言一、pandas是什么?二、使用步骤1.引入库2.读入数据总结学习目标:学习内容:学习时间:学习产出: 什么是抽象数据类型...
  • 有理数抽象数据类型

    2014-06-05 23:20:30
    通过构造有理数的抽象数据类型,完成有理分数加减乘除和求导操作。
  • 数据结构、数据类型、抽象数据类型之间的区别

    千次阅读 多人点赞 2019-11-03 20:15:37
    数据元素是最基本的数据单位,最基本的数据元素是一个二进制位。) 逻辑结构指反映数据元素之间的逻辑关系的数据结构,其中的逻辑关系是指数据元素之间的前后件关系,而与他们在计算机中的存储位置无关。包括: ...
  • 该代码实现抽象数据类型树的各个基本操作,包括遍历等
  • 列表执行 我自己的列表抽象数据类型实现
  • 抽象数据类型(abstract data type,ADT)是指一个数学模型以及定义在该模型上的一组操作。 ADT 抽象数据类型名{ 数据对象:<数据对象的定义> 数据关系:<数据关系的定义> 基本操作:<基本操作的定义> ...
  • C++抽象数据类型

    千次阅读 2016-06-28 16:50:37
    本文涉及到的知识点有:抽象数据类型(ADT),栈(stack),类定义等, 类很适合用于描述ADT,共有成员函数提供了ADT描述服务,而类的私有部分和类方法代码提供了实现,但这些实现对客户是隐藏的。 参考文献:C++...
  • 在学习数据结构类型时,首先遇到的一个难点即是如何理解抽象数据结构类型。...抽象数据类型需要通过固有数据类型(高级编程语言中已实现的数据类型)来实现。对一个抽象数据类型进行定义时,必须给出...
  • 问:C语言中用什么方法实现抽象数据类型最好? 答:用户使用指向未公开定义的结构类型的指针绝对是个好办法。换言之,用户只需要使用结构的指针,如不需要知道结构的成员是什么,如调用参数或返回值为该结构...
  • 实现两个有理数相加、相减、相乘以及求分子或求分母的运算。
  • 数据类型: 是一个值的集合和定义在此集合上一组操作的总称。 数据类型有两种:简单型和结构类型。...抽象数据类型(Abstract Datat Type, ADT): 是一个数学模型和定义在此数学模型上一组操作。 ...
  • 人们在使用计算机解决客观世界中存在的具体问题时,通常过程如下:首先通过对客观世界的认知形成印象和概念从而得到了信息,在此基础上... 数据结构主要与在上述过程中从建立概念模型到实现模型转化并为后续程序设...
  • 抽象数据类型实现 其中实现了一些最基本的函数.同时也给出了主函数供测试!!希望对正在学习数据结构的朋友们能有所帮助!!
  • 什么是抽象数据类型

    千次阅读 2021-04-29 23:15:13
    抽象数据类型(Abstract Data Type,ADT)是计算机领域中被广泛接受的一种思想和方法,也是一种用于设计和实现程序模块的有效技术。ADT的基本思想是抽象,或者说是数据抽象(与函数定义实现的计算抽象或过程抽象对应...

空空如也

空空如也

1 2 3 4 5 ... 20
收藏数 586,621
精华内容 234,648
关键字:

抽象数据类型的实现