实验三;结构体和共用体。
#include<>
#include<>
typedef char elemtype;
typedef struct node
r->next=null;
return h;
void listinsert(linklist l,int i,elemtype e)
if(!p||j>i-1)
s=(linklist)malloc(sizeof(lnode));
s->data=e; s->next=p->next;
p->next=s;
void listdelete(linklist l,int i,elemtype *e)
if(!(p->next)||j>i-1)
q=p->next; p->next=q->next;
e=q->data; free(q);
void locateelem_by_unmber(linklist l,int i,elemtype *e)
if(!(p->next)||j>i-1)
e=p->next->data;
int locateelemtype_by_value(linklist l,elemtype e)
if(p) return j;
else return 0;
void listinvert(linklist l)
void output(linklist l)
printf("");
main()
linklist l; int i; elemtype e;
l=createlist();printf("");
printf("输入的字符为:")output(l);
printf("");
printf("输入一字符和一位置的序号,将把此字符插入到该位置 ")
e=getchar();scanf("%c%d",&e,&i);
listinsert(l,i,e);
printf("在%2d 号位上插入了字符%2c 后的数据为:",i,e); output(l);
printf("");
printf("输入一位置的序号,将删除该位置上的字符 ")
scanf("%d",&i);
listdelete(l,i,&e);
printf("删除%2d 号位上的字符%2c 后的数据为:",i,e); output(l);
e=getchar();printf("");
listinvert(l);
printf("上面的数据经逆置后为:")output(l);
printf("");
printf("输入一个位置,将查询该位置上的字符 ")
scanf("%d",&i);
locateelem_by_unmber(l,i,&e);
printf("%d号位上的字符为:%c",i,e);
printf("");
printf("输入一个字符,将查询上面的数据中是否存在该字符 ")
e=getchar();scanf("%c",&e);
i=locateelemtype_by_value(l,e);
if(i) printf("字符%2c 在上面数据的第%2d 个位置",e,i);
else printf("上面的数据中不存在字符%c",e);
数据结构实验八内部排序
1 掌握内部排序的基本算法 2 分析比较内部排序算法的效率。1.运行下面程序 include include define max 50 int slist max 待排序序列 void insertsort int list,int n void createlist int list,int n...
数据结构实验四数组的运算
实验四数组的运算。实验目的 掌握稀疏矩阵的压缩存储方法及主要运算的实现。实验内容与要求 设计一个稀疏矩阵计算器,要求能够 输入并建立稀疏矩阵 输出稀疏矩阵 执行两个矩阵相加 执行两个矩阵相乘 求一个矩阵的转置矩阵 求一个矩阵的逆矩阵 选做 算法设计 include define maxsize 10...
数据结构实验二叉树
下列程序中的统计二叉树结点的函数,是对二叉树遍历方法的应用,请认真理解然后模仿练习。二叉树的建立与遍历 include include typedef int etype typedef struct bitnode 树结点结构体 bitnode 函数原形声明 bitnode creat bt1 b...