C语言数据结构与指针(4)_c语言指针结构和联合

2020-02-27 其他范文 下载本文

C语言数据结构与指针(4)由刀豆文库小编整理,希望给你工作、学习、生活带来方便,猜你可能喜欢“c语言指针结构和联合”。

数据结构【第四次】实验报告

学院:

班级:

学号:

姓名:

实验四

(一)实验名称:C语言数据结构与指针

(二)实验目的:巩固复习前期所学C语言的函数参数传递、指针和结构体等知识点,加强学习数据结构语言基础。

(三)实验内容:

1)学生信息的显示,具体要求如下:

定义一个结构体描述学生信息(学号,姓名,性别,年龄,住址);

设计一个函数,用于显示单个学生信息,函数的参数为前面定义的结构体类型;

设计一个主函数,在主函数中输入学生的信息,并调用前面定义的函数进行显示(学生人数不少于5人)。

2)输入若干个整数作为数组元素值,然后按输入时顺序的就地逆置排序,最后打印出逆置后的元素值。要求用指针和动态内存分配方法实现。例如 输入:10 2 30 4 5,逆置后显示为:5 4 30 2 10。

(四)源代码:

#define MAXSIZE 100

#include #include typedef int ElemType;typedef struct {

ElemType data[MAXSIZE];int length;

} SqList;SqList l;

void InitList(SqList &L)

{

L.length = 0;} void CreatSqlist(SqList &L,int n)

{

printf(“请输入节点”);int i;for(i=0;i

} void Output(SqList &L)

{ int i;for(i=0;i

printf(“n”);} int chazhao(SqList &L,int x){ int i,k;printf(“n请输入你要查找的元素 x=?”);scanf(“%d”,&x);for(i=0;i

if(x==L.data[i])

{printf(“要查找的元素%d位于线性表第%d位上nn”,x,i+1);

k=0;

break;

} } if(k!=0)printf(“所要查找的元素%d不在线性表中”,x);return 0;} int GET(SqList &L,int i){ int m;if((iL.length)){printf(“所查找范围超出线性表长度”);return 1;} else if((i>=1)&&(i

m=L.data[i-1];}printf(“%d ”,m);return 0;} int DELETE(SqList &L,int i){ int j;if(iL.length){printf(“删除错误”);return 0;} else {

for(j=i;j

L.data[j-1]=L.data[j];

L.length--;

} return 1;} int INSERT(SqList &L,int x,int i){ int j;if(L.length>=MAXSIZE-1){printf(“over flow”);return 1;} else if((iL.length+1)){printf(“插入错误”);return 1;} else

{for(j=L.length;j>=i-1;j--)L.data[j+1]=L.data[j];L.data[i-1]=x;L.length=L.length+1;} return 0;} int main(){int n,i,k,x;InitList(l);printf(“请输入线性表的长度 ”);scanf(“%d”,&n);CreatSqlist(l,n);Output(l);

printf(“请输入你要查找的数所在的节点位置”);scanf(“%d”,&i);GET(l,i);chazhao(l,x);printf(“请输入你要删除元素的位置=?”);scanf(“%d”,&k);DELETE(l,k);Output(l);printf(“请输入你要插入的数和位置x,i=?”);scanf(“%d,%d”,&x,&i);INSERT(l,x,i);Output(l);return 0;}

(五)代码运行结果:

(六)需求分析

1、输入的形式和输出值的范围:1)输入10个整数。2)输出整个顺序线性表。

2、输出的形式:完成各种功能后的线性表。

3、程序所能达到的功能:1)所存储顺序线性表的显示、元素的查找、删除和插入。

(七)所用到的函数:

void CreatSqlist void Output Int chazhao int GET int INSERT int DELETE

(八)心得体会:

此次实验的过程中还是遇到了很多意想不到的问题,让我再一次深刻的体会到了理论和实践的差距。使我清楚的知道技术上的东西,细节更显得尤为重要和值得重视。困难虽有,但在我的努力下,最后还是成功完成了实验。总而言之,这次实验又增长了我不好知识。

《C语言数据结构与指针(4).docx》
将本文的Word文档下载,方便收藏和打印
推荐度:
C语言数据结构与指针(4)
点击下载文档
相关专题 c语言指针结构和联合 数据结构 指针 语言 c语言指针结构和联合 数据结构 指针 语言
[其他范文]相关推荐
    [其他范文]热门文章
      下载全文