欢迎来到三一办公! | 帮助中心 三一办公31ppt.com(应用文档模板下载平台)
三一办公
全部分类
  • 办公文档>
  • PPT模板>
  • 建筑/施工/环境>
  • 毕业设计>
  • 工程图纸>
  • 教育教学>
  • 素材源码>
  • 生活休闲>
  • 临时分类>
  • ImageVerifierCode 换一换
    首页 三一办公 > 资源分类 > DOCX文档下载  

    数据结构实验六查找与排序.docx

    • 资源ID:3560106       资源大小:38.30KB        全文页数:6页
    • 资源格式: DOCX        下载积分:6.99金币
    快捷下载 游客一键下载
    会员登录下载
    三方登录下载: 微信开放平台登录 QQ登录  
    下载资源需要6.99金币
    邮箱/手机:
    温馨提示:
    用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)
    支付方式: 支付宝    微信支付   
    验证码:   换一换

    加入VIP免费专享
     
    账号:
    密码:
    验证码:   换一换
      忘记密码?
        
    友情提示
    2、PDF文件下载后,可能会被浏览器默认打开,此种情况可以点击浏览器菜单,保存网页到桌面,就可以正常下载了。
    3、本站不支持迅雷下载,请使用电脑自带的IE浏览器,或者360浏览器、谷歌浏览器下载即可。
    4、本站资源下载后的文档和图纸-无水印,预览文档经过压缩,下载后原文更清晰。
    5、试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。

    数据结构实验六查找与排序.docx

    数据结构实验六 查找与排序算法分析实验六 查找与排序 班级 学号 姓名 分数 一、实验目的: 1理解掌握查找与排序在计算机中的各种实现方法。 2学会针对所给问题选用最适合的算法。 3熟练掌握常用排序算法在顺序表上的实现,能解决简单的应用问题。 二、实验要求: 掌握利用常用的查找排序算法的思想来解决一般问题的方法和技巧,进行算法分析并写出实习报告。 三、实验内容及分析: 设计一个学生信息管理系统,学生对象至少要包含:学号、性别、成绩1、成绩总成绩等信息。要求实现以下功能: 1平均成绩要求自动计算; 2查找:分别给定学生学号、性别,能够查找到学生的基本信息; 3 排序:分别按学生的学号、成绩1、成绩2、平均成绩进行排序。 四、程序的调试及运行结果 五、程序代码 #include<stdio.h> #include<string.h> struct student/定义结构体 char name30; int a1,a2,a3,num; double pow; zl100; int count=0; void jiemian1; /主界面/函数声明 int jiemian2; /选择界面 void luru; /录入函数 void xianshi; /显示 void paixv; /排序 void diaoyong(int); /循环调用选择界面 void tianjia; /添加信息 void chaxun1; /按学号查询详细信息 void chaxun2; /按姓名查询详细信息 void xiugai; /修改信息 void shanchu; /删除信息 void main /main函数 jiemian1;/函数点用 void jiemian1 /主界面定义 char a; printf("nnnnttt学 员 信 息 管 理 器nnnttt 数据结构课程设计练习六 nnnttt 09信计2:于学彬nn"); printf("nttt 按 回 车 键 继 续:"); scanf("%c",&a); system("cls"); jiemian2; int jiemian2 /选择界面 int a,b; printf("*主 要 功 能*"); printf("nnnntttt1.录 入 信 息nntttt2.添 加 信 息nntttt3.查 看 信 息nntttt4.查 询 信 息nntttt5.修 改 信 息nntttt6.删 除 信 息nntttt7.退 出nntttt请 选 择:"); scanf("%d",&a); switch(a) case 1:system("cls");luru;break; case 2:system("cls");tianjia;break; case 3:system("cls");paixv;break; case 4:system("cls"); printf("1.按学号查询详细信息n2.按姓名查询详细信息n请选择:"); scanf("%d",&b); switch(b) case 1:system("cls");chaxun1;break; case 2:system("cls");chaxun2;break; break; case 5:system("cls");xiugai;break; case 6:system("cls");shanchu;break; case 7:system("cls");return a;break; void diaoyong(int b) /循环调用选择界面 char a='y' printf("是否返回选择页(y/n):"); fflush(stdin);/清空输入缓冲区,通常是为了确保不影响后面的数据读取(例如在读完一个字符串后紧接着又要读取一个字符,此时应该先执行fflush(stdin);) a=getchar; system("cls"); while(a='y'|a='Y') b=jiemian2; if(b=7) break; void luru /录入函数 char a;/='y' do printf("请输入学员信息:n"); printf("学号:"); scanf("%d",&zlcount.num);/调用结构体 printf("姓名:"); fflush(stdin); gets(zlcount.name); printf("三门成绩:n"); printf("成绩1:"); scanf("%d",&zlcount.a1); printf("成绩2:"); scanf("%d",&zlcount.a2); printf("成绩3:"); scanf("%d",&zlcount.a3); zlcount.pow=(zlcount.a1+zlcount.a2+zlcount.a3)/3;/求平均数 printf("是否继续(y/n):"); fflush(stdin); a=getchar; count+; system("cls"); while(a='y'&&count<100); /paixv; diaoyong(count); void tianjia /添加信息 char a='y' do printf("请输入学员信息:n"); printf("学号:"); scanf("%d",&zlcount.num); printf("姓名:"); /fflush(stdin); gets(zlcount.name); printf("三门成绩:n"); printf("成绩1:"); scanf("%d",&zlcount.a1); printf("成绩2:"); scanf("%d",&zlcount.a2); printf("成绩3:"); scanf("%d",&zlcount.a3); zlcount.pow=(zlcount.a1+zlcount.a2+zlcount.a3)/3; printf("是否继续(y/n):"); /fflush(stdin); a=getchar; count+; system("cls"); while(a='y'&&count<100); paixv(count); diaoyong(count); void xianshi /显示 int i; printf("学号t t姓名ttt平均成绩n"); for(i=0;i<count;i+) printf("%dt t%sttt%fn",zli.num,zli.name,zli.pow); void paixv /排序 int i,j; struct student zl1; printf("排序前:n"); xianshi; for(i=0;i<count;i+) for(j=1;j<count-i;j+) if(zlj-1.pow<zlj.pow) zl1=zlj-1; zlj-1=zlj; zlj=zl1; printf("排序后:n"); xianshi; diaoyong(count); void chaxun1 /按学号查询详细信息 int i,num; printf("请输入要查询学员的学号:"); scanf("%d",&num); printf("学号t姓名t成绩1t成绩2t成绩3t平均成绩n"); for(i=0;i<count;i+) if(zli.num=num) printf("%dt%st%dt%dt%dt%.2fn",zli.num,zli.name,zli.a1,zli.a2,zli.a3,zli.pow); diaoyong(count); void chaxun2 /按姓名查询详细信息 int i; struct student zl1; printf("请输入要查询学员的姓名:"); fflush(stdin); gets(zl1.name); printf("学号t姓名t成绩1t成绩2t成绩3t平均成绩n"); for(i=0;i<count;i+) if(strcmp(zli.name,zl1.name)=0)/比较两个字符串的大小 printf("%dt%st%dt%dt%dt%.2fn",zli.num,zli.name,zli.a1,zli.a2,zli.a3,zli.pow); diaoyong(count); void xiugai /修改信息 int i,num; printf("请输入要查询学员的学号:"); scanf("%d",&num); printf("学号t姓名t成绩1t成绩2t成绩3t平均成绩n"); for(i=0;i<count;i+) if(zli.num=num) break; printf("%dt%st%dt%dt%dt%.2fn",zli.num,zli.name,zli.a1,zli.a2,zli.a3,zli.pow); printf("请输入学员信息:n"); printf("学号:"); scanf("%d",&zli.num); printf("姓名:"); fflush(stdin); gets(zli.name); printf("三门成绩:n"); printf("成绩1:"); scanf("%d",&zli.a1); printf("成绩2:"); scanf("%d",&zli.a2); printf("成绩3:"); scanf("%d",&zli.a3); zli.pow=(zli.a1+zli.a2+zli.a3)/3; printf("学号t姓名t成绩1t成绩2t成绩3t平均成绩n"); printf("%dt%st%dt%dt%dt%.2fn",zli.num,zli.name,zli.a1,zli.a2,zli.a3,zli.pow); diaoyong(count); void shanchu /删除信息 int num,i,j; printf("请输入要删除的学员学号:"); scanf("%d",&num); for(i=0;i<count;i+) if(zli.num=num) for(j=i;j<count;j+) zlj=zlj+1; count-; xianshi; diaoyong(count);

    注意事项

    本文(数据结构实验六查找与排序.docx)为本站会员(牧羊曲112)主动上传,三一办公仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知三一办公(点击联系客服),我们立即给予删除!

    温馨提示:如果因为网速或其他原因下载失败请重新下载,重复下载不扣分。




    备案号:宁ICP备20000045号-2

    经营许可证:宁B2-20210002

    宁公网安备 64010402000987号

    三一办公
    收起
    展开