• 大小: 768KB
    文件类型: .zip
    金币: 1
    下载: 0 次
    发布日期: 2021-05-22
  • 语言: 数据库
  • 标签: 顺序表  

资源简介

设计一个包含学生基本信息(学号,姓名,成绩)的顺序表,编程完成如下功能: ⑴ 初始化顺序表 L: 根据用户指定的学生数,逐个输入学生信息; ⑵ 打印表中所有学生信息: 逐个显示表中所有学生的基本信息; ⑶ 判断 L 是否为空表; ⑷ 查找指定学生: 根据姓名进行查找, 返回学生的位序,并输出学生的学号和成绩; ⑸ 根据指定的位置, 返回并输出相应学生的基本信息; ⑹ 给定一个学生信息, 将其插入到表中指定的位置; ⑺ 删除指定位置的学生记录; ⑻ 统计表中学生个数(求表长度); ⑼ 销毁表 L; 以上为必做题, 下面为附加题(选做) 。 ⑽ 建立两个有序(学号) 的学生顺序表 La 和 Lb: 分别向顺序表 La 和 Lb 逐个输入 m 个 和 n 个学生的信息(并不一定按学号大小顺序输入); ⑾ 打印表 La 和 Lb 中的学生信息; ⑿ 将 La 和 Lb 归并为新的有序表 Lc; ⒀ 打印表 Lc 中的学生信息; ⒁ 销毁顺序表 La、 Lb 和 Lc。 其他要求: ⑴ 将所需要的标准头文件以及一些符号常量的定义等放在 Common.h 头文件中; ⑵ 顺序表类型定义( 采用定义二) 和基本操作函数声明放在 Sqlist.h 头文件中; ⑶ 基本操作函数的实现放在 Sqlist.cpp 文件中; ⑷ 测试应用程序放在 SqlistTestApp.cpp 文件中( 可以任意重复测试) 。

资源截图

代码片段和文件信息

#include“common.h“
#include“Sqlist.h“

void print()
{
printf(“************************************\n“);
printf(“*  0.输出选项                      *\n“);
printf(“*  1.请按顺序输入n个学生的信息     *\n“);
printf(“*  2.显示所有学生的信息            *\n“);
printf(“*  3.判断该表是否为空表            *\n“);
printf(“*  4.输入学生姓名,查找该学生的信息*\n“);
printf(“*  5.输入位置,显示该学生信息      *\n“);
printf(“*  6.添加学生信息                  *\n“);
printf(“*  7.删除学生信息                  *\n“);
printf(“*  8.计算学生个数                  *\n“);
printf(“*  9.销毁表                        *\n“);
printf(“*  10.分别输入学生表La和Lb         *\n“);
printf(“*  11.分别输出学生表La和Lb的信息   *\n“);
printf(“*  12.将La和Lb归并有序表Lc         *\n“);
printf(“*  13.输出Lc的信息                 *\n“);
printf(“*  14.销毁LaLbLc                 *\n“);
printf(“*  其他:输出选项                  *\n“);
printf(“************************************\n“);


}

void InitList(Sqlist &L)
{
int ijtemi;
double temd;
char str1[100];
printf(“请输入录入学生信息的个数:“);
scanf(“%d“&L.length);
for(i=0;i {
printf(“请输入该同学学号:“);
    scanf(“%d“&L.a[i].xuehao);
printf(“请输入该同学姓名:“);
scanf(“%s“&L.a[i].name);
printf(“请输入该同学分数:“);
scanf(“%lf“&L.a[i].fenshu);
printf(“\n“);
}
for(i=0;i {
for(j=i+1;j {
if(L.a[i].xuehao>L.a[j].xuehao)
{
temi=L.a[i].xuehao;
L.a[i].xuehao=L.a[j].xuehao;
L.a[j].xuehao=temi;
strcpy(str1L.a[i].name);
strcpy(L.a[i].nameL.a[j].name);
strcpy(L.a[j].namestr1);
temd=L.a[i].fenshu;
L.a[i].fenshu=L.a[j].fenshu;
L.a[j].fenshu=temd;
}
}
}
printf(“已完成录入\n“);
}
void InitList(Sqlist L1Sqlist L2Sqlist &L3)
{
int ijk=0temi;
double temd;
char str1[100];
L3.length=L1.length+L2.length;
for(i=0;i {
L3.a[k].xuehao=L1.a[i].xuehao;
    strcpy(L3.a[k].nameL1.a[i].name);
    L3.a[k].fenshu=L1.a[i].fenshu;
k++;
}
for(i=0;i {
L3.a[k].xuehao=L2.a[i].xuehao;
    strcpy(L3.a[k].nameL2.a[i].name);
    L3.a[k].fenshu=L2.a[i].fenshu;
k++;
}
for(i=0;i {
for(j=i+1;j {
if(L3.a[i].xuehao>L3.a[j].xuehao)
{
temi=L3.a[i].xuehao;
L3.a[i].xuehao=L3.a[j].xuehao;
L3.a[j].xuehao=temi;
strcpy(str1L3.a[i].name);
strcpy(L3.a[i].nameL3.a[j].name);
strcpy(L3.a[j].namestr1);
temd=L3.a[i].fenshu;
L3.a[i].fenshu=L3.a[j].fenshu;
L3.a[j].fenshu=temd;
}
}
}
printf(“成功归入Lc!“);
}
void DispList(Sqlist &L)
{
int i;
if(L.length==0) printf(“该表已空!\n“);
for(i=0;i {
printf(“学号:%d    “L.a[i].xuehao);
printf(“姓名:%s    “L.a[i].name);
printf(“成绩:%.1lf“L.a[i].fenshu);
printf(“\n“);
}
}
void Panduan(Sqlist &L)
{
if(L.length==0) printf(“该表为空表!\n“);
printf(“该表不为空表\n“);
}
void Findname(Sqlist &Lchar str[])
{
int i;
for(i=0;i {
if(strcmp(strL.a[i].name)==0)
{
printf(“该同是%d名   “i+1);
printf(“学号:%d   

 属性            大小     日期    时间   名称
----------- ---------  ---------- -----  ----
     目录           0  2016-04-14 14:42  顺序表\
     目录           0  2016-04-14 14:42  顺序表\Debug\
     文件       31283  2015-12-22 11:37  顺序表\Debug\Sqlist.obj
     文件       16926  2015-12-22 11:27  顺序表\Debug\SqlistTestApp.obj
     文件       13838  2015-10-03 17:02  顺序表\Debug\function.obj
     文件       99328  2015-12-22 11:37  顺序表\Debug\vc60.idb
     文件      102400  2015-12-22 11:30  顺序表\Debug\vc60.pdb
     文件      282692  2015-12-22 11:28  顺序表\Debug\顺序表.exe
     文件      392184  2015-12-22 11:28  顺序表\Debug\顺序表.ilk
     文件     1999088  2015-12-22 11:26  顺序表\Debug\顺序表.pch
     文件      607232  2015-12-22 11:28  顺序表\Debug\顺序表.pdb
     文件        4799  2015-12-22 11:30  顺序表\Sqlist.cpp
     文件         636  2015-12-22 11:26  顺序表\Sqlist.h
     文件        1374  2015-09-30 12:35  顺序表\SqlistTestApp.cpp
     文件          95  2015-09-29 22:20  顺序表\common.h
     文件        4476  2015-09-29 22:25  顺序表\顺序表.dsp
     文件         520  2015-09-29 22:25  顺序表\顺序表.dsw
     文件       66560  2015-12-22 11:38  顺序表\顺序表.ncb
     文件       49664  2015-12-22 11:38  顺序表\顺序表.opt
     文件         712  2015-12-22 11:37  顺序表\顺序表.plg

评论

共有 条评论

相关资源