• 大小: 867B
    文件类型: .rar
    金币: 2
    下载: 0 次
    发布日期: 2021-05-07
  • 语言: 其他
  • 标签: 链表  

资源简介

实习四、线性表(链式存储)及其应用(分四个实验) 实习目的:掌握链式存储结构下线性表的建立及基本操作。 问题:建立一个采用链式存储的线性表,表中元素为学生,每个学生信息包含姓名、学号和成绩三部分,对该表实现:①输出、②查找、③插入、④删除功能,并计算出平均成绩和总成绩。

资源截图

代码片段和文件信息

#include
#include
#include
typedef struct list{
    char id[20];
  char name[20];
int scores;
struct list* p;
 }student;
 
void insertList(student s[]int* n);
void outputList(student s[]int n);
void findIndex(student f[]int n);
void computeSumScores(student s[]int n);
void computeAvggrade(student s[]int n);
void deleteList(student s[]int* n);
int main(){
int choose;
  int index=0;
  student students[maxSize];
  students[index].id=“20141120222“;
  students[index].name=“静静“; 
 students[index].scores=99;

 while(true){
printf(“*********************************菜单项********************************\n 0 表示退出\n 1 表示插入\n 2 表示查找\n 3 表示删除\n 4 表示输出所有学生信息\n 5 表示计算学生总成绩\n 6 表示计算学生平均成绩\n请输入你的选项:\n“); 
 scanf(“%d“&choose);
 switch(choose){
  case 0:printf(“byebyesee you next time!“);return 0;
  case 1:{
  index++;
  if(index>maxSize-1){
  printf(“对不起,存储空间已满,不能插入数据!“);break; 
 }
 else{
  insertList(students&index);        //中文乱码??????????  -->第二个数是表情符号?乱码???第一个为什么没有乱??? 
   printf(“%s  %s  %d  --->“students[index].idstudents[index].namestudents[index].scores);
  printf(“插入成功!\n“); 
  break;
 }
 break;
 }
  case 2:findIndex(studentsindex);break;
  case 3:deleteList(students&index);break;
  case 4:outputList(studentsindex);break;
  case 5:computeSumScores(studentsindex);break;
  case 6:computeAvggrade(studentsindex);break;
 }
}
return 0;
}

 属性            大小     日期    时间   名称
----------- ---------  ---------- -----  ----

     文件       1611  2016-12-06 17:32  studentlinkListOperation1.0.cpp

----------- ---------  ---------- -----  ----

                 1611                    1


评论

共有 条评论