数 据 结 构
实验报告
实验课程:  数据结构   
学    号: 2016031124             
学生姓名: 郑世林             
班    级: 16软件             
2017年  月  日

实验一  函数与结构体(复习)
一、实验目的:
巩固复习前期所学C语言的函数参数传递、指针和结构体等知识点,加强学习数据结构语言基础。
二、实验要求
1、学生提前准备好实验报告,预习并熟悉实验步骤;
2、遵守实验室纪律,在规定的时间内完成要求的内容;
3、1~2人为1小组,实验过程中独立操作、相互学习。
三、实验内容:
1. 用数组处理Fibonacci数列问题。
已知Fibonacci数列:
1  1  2  3  5  8    13  21  34  ……  输出数列的前20项。
#include<stdio.h>
int main()
{
      int a[22],i,n;
      a[0]=a[1]=1;
      for(i=2;i<21;i++)
          a[i]=a[i-1]+a[i-2];
    printf("%d",a[0]);
    for(i=1;i<21;i++)
          printf(" %d",a[i]);
    printf("\n");
    return 0;}
2. 下面的程序的功能是:输入三个整数,输出其中最大的数,补足所缺语句。
#include <stdio.h>
int max(int x,int y);                    /*函数max的声明*/
int max3(int x,int y,int z);                /*函数max3的声明*/
void main()
{
    int a,b,c,m;
printf("请输入三个整数,用逗号隔开:\n");   
scanf("%d,%d,%d",&a,&b,&c);        /*从键盘接收3个整数*/
    m=max3(a,b,c);
    printf("Max is %d\n",m);
getch();
}
int max(int x, int y)            /*函数功能:返回x、y的最大值*/
{
    return (x>y?x:y);
}
int max3(int x, int y, int z)        /*函数功能:返回x、y、z的最大值*/
{
int m;
    m=max(max(x,y),z);结构体数组不能作为参数传递给函数     
    return m;
}
3.学生信息的显示,具体要求如下:
1)定义一个结构体描述学生信息(学号,姓名,性别,年龄,住址);
2)设计一个函数,用于显示单个学生信息,函数的参数为前面定义的结构体类型;
3)设计一个主函数,在主函数中输入学生的信息,并调用前面定义的函数进行显示(学生人数不少于5人)。
提示:可用结构体数组保存学生信息。
4. 输入若干个整数作为数组元素值,然后按输入时顺序的就地逆置排序最后打印出逆置后的元素值。例如 输入:10  2  30  4  5,逆置后显示为:5  4  30  2  10
四、 程序运行结果和源代码为:
此处写程序源代码,请在程序中适当注释,便于老师更快地看懂你的程序。
此处写出程序运行的结果,即输入数据是什么,输出数据是什么,分析结果是否正确,如果不正确是什么原因。
五、实验总结
1、收获
2、存在的问题

实验二  线性表的算法实现
一、实验目的:
1、掌握线性表的定义方法
2、.掌握线性表基本操作的实现方法;
二、实验要求
1、学生提前准备好实验报告,预习并熟悉实验步骤;
2、遵守实验室纪律,在规定的时间内完成要求的内容;
3、1~2人为1小组,实验过程中独立操作、相互学习。

版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系QQ:729038198,我们将在24小时内删除。