实验二 性线表的插入与删除操作 ——数组实现

1. 实验目的

巩固线性表的概念和基本操作,学会用数组实现线性表。

2. 实验内容

数据结构及定义与实验一一样。要求有以下的功能都用单独一个函数实现:

  1. 插入某一个同学的数据
  2. 删除某一个同学的数据
  3. 输入学号查找某一个同学
  4. 输出整个表格。

实验二程序框架

   1 #include<stdio.h>
   2 const int MAXSIZE= 100;
   3 typedef struct{
   4     int number;
   5     char name[20];
   6     int chinese;    
   7     int math;
   8     int physics;
   9     int totalScore;
  10     int order;
  11 }datatype;
  12 typedef struct {
  13   datatype a[MAXSIZE];
  14   int size;
  15 } sequence_list;
  16 int main() {
  17     int i;
  18     int pos;
  19     int select;
  20     sequence_list  stud;
  21     init_sequence_list(&stud);
  22     while(1) {
  23        printf(" 请选择 : 0(退出)  1(插入),2(删除) 3(查找)4(打印):");
  24        scanf("%d",&select);
  25        switch(select) {
  26        case 1:  
  27            printf("输入要插入的位置");
  28            scanf("%d",&pos);
  29            /* todo:输入一个同学的数据:学号,姓名,成绩等*/
  30            /* todo:写一个函数实现插入算法 ,并在此处调用*/
  31        break;
  32        case 2:
  33            /* todo:输入要删除的同学的学号*/  
  34            /* todo:写一个函数实现删除算法 ,并在此处调用*/
  35        break;
  36        case 3: 
  37            /* todo:输入要查找的同学的学号*/
  38            /* todo:写一个函数实现查找算法 ,并在此处调用*/
  39        break;
  40        case 4:
  41            /*todo: 写一个函数,打印出所有学生的相关信息。*/
  42        break;
  43        case 0:
  44             printf("程序正常结束,下次再见\n");
  45             return 0;
  46        }
  47     }
  48 }

3. 思考题

  1. 如果要求按学号排序,同时计算出每个学生的总成绩和名次,应该如何实现?

数据结构课程实验/顺序表 (2008-02-23 15:34:06由localhost编辑)

ch3n2k.com | Copyright (c) 2004-2020 czk.