实验五、六部分参考答案

合集下载

c程序设计实验参考答案

c程序设计实验参考答案
编程求出某学生期末三门课程的总分及平均分。结果保留小数点后一位。
main( )
{ float a,b,c;
float s,v;
scanf("%f,%f,%f,%f",&a,&b,&c);
s=a+b+c;
v=s/3.0;
printf("\n%7.1f,%7.1f",s,v);
}
实验五参考答案
一.1、a=10,b=30,c=10
}
2、main()
{int i;
double m=100000,n,s;
n=0.01;
s=0;
for(i=1;i<=30;i++)
{s+=n;
n=n*2;
}
printf("%f %f\n",s,m*30 );
}
实验八参考答案:
一.1、s=12345
2、7,
5,
3,
3、<1,2>=6
二.1、% for(j=k;j>0;j--)
第4行改为scanf("%d",&a[i]);
第12行改为printf("av=%d\n",av);
四.1、分析:C中数组长度必须是确定大小,即指定N的值。排序的方法有多种,取出其中两种作为参考。
方法一:起泡排序
从第一个数开始依次对相邻两数进行比较,如次序对则不做任何操作;如次序不对则使这两个数交换位置。第一遍的(N-1)次比
{ case 10:
case 9: ch='A'; break;
case 8: ch='B'; break;

实验五 队列的应用(参考答案)

实验五 队列的应用(参考答案)

实验五、队列的应用一、实验原理:一种“先进先出”(FIFO---First In First Out)的数据结构:即插入在队尾一端进行,而删除在队头进行。

键盘缓冲区问题:设计算法实现模拟键盘缓冲区问题。

假设有两个进程同时存在于一个应用程序之中,第一个进程连续在屏幕上显示字符“X”,第二个进程不断检查键盘上是否有输入,若有则读入用户键入的字符,将其保存到键盘缓冲区之中。

程序约定当用户键入一个逗号“,”,则表示第一进程结束,系统开始显示那些在键盘缓冲区中的字符;接着继续执行第一个进程,即,在屏幕上显示字符“X”;当用户输入“;”的时候,刚结束整个程序。

算法提示:为了充分利用缓冲区的空间往往将缓冲区设计成循环队列的结构,并为循环队列结构的缓冲区设置一个队首指针和一个队尾指针。

每输入法一个字符到缓冲区中,就将尾指针后移,链入缓冲区的循环队列之中;每输出一个字符号,就将队头指针前移,将它从缓冲队列中删除。

参考代码:/*键盘缓冲区问题*/#define MAXSIZE 20#define TRUE 1#define FALSE 0#include "stdio.h"#include "conio.h"#include "dos.h"typedef char elemtype;typedef struct{elemtype elem[MAXSIZE];int front, rear;}queuetype;int enque(queuetype *s, elemtype x) /*数据入队列*/{if (( s->rear+1)%MAXSIZE==s->front ) /*队列已满*/return (FALSE);else{s->rear=(s->rear+1) % MAXSIZE;s->elem[s->rear]=x;return(true);}}elemtype delqueue (queuetype *s ) /*数据出队列*/{if (s-front==s->rear) /*队列为空*/return(NULL);else /*队列非空*/{s->front=(s->front+1)%MAXSIZE;return(s->elem[s->front]);}}main(){char ch1,ch2;queuetype *p;int t,f;p=(queuetype *)malloc(sizeof(queuetype));p->front=0;p->rear=0;while(1) /*开始交替执行*/{while(1) /*第一个进程的执行*/{if(kbhit()) /*检测是否有键盘输入*/{ch1=bdos(7,0,0); /*中断调用,键入字符存入ch1*/f=enqueue( p, ch1 ); /*字符入循环队列*/if ( f== FALSE ){printf(" The queue is already full !\n");break;}}if ( ch1==';' || ch1==',' )break; /*第一个进程正常结束情况*/printf("X"); /*执行第一个进程*/}ch2=delqueue(p);while( ch2 != NULL ){putchar(ch2); /*在屏幕上显示输入缓冲区中的内容*/ch2=delqueue(p); /*字符出队列*/}getchar(); /*为看清屏幕内容, 在此暂停, 按回车继续if (ch1==';'||f==FALSE) /*程序结束*/break;else /*继续执行*/ch1=''; /*先置空ch1*/}}。

信号与信号处理实验参考答案

信号与信号处理实验参考答案

信号与信号处理实验参考答案实验⼀熟悉MATLAB 环境2、(2)粗略描绘下列各函数的波形说明:MA TLAB 中有函数ttt c ππsin )(sin = ④ f(t)=sint/tt=-3*pi:0.01*pi:3*pi; t1=t/pi; y=sinc(t1); plot(t,y); hold onplot(t,0)⑤在⾃⼰的⼯作⽬录work 下创建Heaviside 函数的M ⽂件,该⽂件如下:function f=Heaviside(t)f=(t>0) %t>0时f 为1,否则f 为0在命令窗⼝输⼊如下语句,就能绘出u(t)的波形。

t=-1:0.01:3; f=Heaviside(t); plot(t,f) axis([-1 3 –0.2 1.2]) ⑥t=-1:0.01:2;g=Heaviside(t)-Heaviside(t-1); plot(t,g);axis([-1 2 -0.2 1.2]) hold on plot(t,0)4、分别⽤for 和while 循环结构编写程序,求出s=∑=632k k=1+2+22+23+…+262+263并考虑⼀种避免循环的简洁⽅法来进⾏求和。

程序如下: s=1; for k=1:63s=s+2^k;s运⾏结果是:s =1.8447e+019(2)s=1;k=1;while k<=63s=s+2^k;k=k+1;ends运⾏结果:s =1.8447e+019(3)k=0:63;s=sum(2.^k)实验⼆信号的卷积与系统的响应和阶跃响应1.n=0:20;hn=0.9.^n;xn=[0,0 ones(1,8),0,0];yn=conv(hn,xn);stem(yn)3. 利⽤MA TLAB绘制下列信号的卷积积分f1(t)*f2(t)的时域波形。

(1)f1(t)=2[u(t+1)-u(t-1)], f2(t)=u(t+2)-u(t-2)(2)f1(t)=tu(t), f2(t)=u(t)(3)f1(t)=u(t)-u(t-4), f2(t)=sin(лt)u(t);(4)f1(t)=e-2t u(t), f2(t)=e-t u(t)(1) 先编写实现连续信号卷积的通⽤函数sconv(),程序如下:function[f,k]=sconv(f1,f2,k1,k2,p)%计算连续信号卷积积分f(t)=f1(t)*f2(t)%f:卷积积分f(t)对应的⾮零样值向量%k:f(t)的对应时间向量%f1:f1(t)⾮零样值向量%f2:f2(t)⾮零样值向量%k1:f1(t)的对应时间向量%k2:序列f2(t)的对应时间向量%p:取样时间间隔f=conv(f1,f2); %计算序列f1与f2的卷积ff=f*p;k0=k1(1)+k2(1); %计算序列f的⾮零样值的起点位置k3=length(f1)+length(f2)-2; %计算卷积和f的⾮零样值的宽度k=k0:p:((k3-(0-k0)/p)*p); %确定卷积和f⾮零样值的时间向量subplot(2,2,1)plot(k1,f1) %绘制f1(t)title('f1(t)')xlabel('t')ylabel('f1(t)')subplot(2,2,2)plot(k2,f2)title('f2(t)')xlabel('t')ylabel('f2(t)')subplot(2,2,3)plot(k,f);h=get(gca,'position');h(3)=2.5*h(3);set(gca,'position',h) %将第三个⼦图的横坐标范围扩为原来的2.5倍title('f(t)=f1(t)*f2(t)') xlabel('t')ylabel('f(t)')p=0.01;k1=-1:p:1;f1=2*ones(1,length(k1));k2=-2:p:2;f2=ones(1,length(k2));[f,k]=sconv(f1,f2,k1,k2,p)(2)p=0.01;k1=0:p:10;k2=0:p:10;f2=ones(1,length(k2)); [f,k]=sconv(f1,f2,k1,k2,p)第(2)题图上实验⼆信号的卷积与系统的响应1.n=0:20;hn=0.9.^n;xn=stepseq(2,0,20)-stepseq(10,0,20);yn=conv(hn,xn);stem(yn)2.(1)p=0.01;k1=-2:p:2;f1=2*(u(k1+1)-u(k1-1));f2=u(k2+2)-u(k2-2);[f,k]=sconv(f1,f2,k1,k2,p)p=0.01;k1=-1:p:10;f1=k1.*u(k1);k2=k1;f2=u(k2);[f,k]=sconv(f1,f2,k1,k2,p)(3)p=0.01;k1=-4:p:10; f1=u(k1)-u(k1-4);k2=k1;f2=sin(pi*k2).*u(k2); [f,k]=sconv(f1,f2,k1,k2,p)5.已知描述某连续系统的微分⽅程为:y’’(t)+5y’(t)+8y(t)=3f’’(t)+2f(t)绘出系统的冲激响应波形,求出t=0.5s, 1s, 1.5s, 2s系统冲激响应的数值解。

实验五__乙酸乙酯的制备-思考题附答案

实验五__乙酸乙酯的制备-思考题附答案

a 实验五 乙酸乙酯的制备一、实验目的1、通过乙酸乙酯的制备,了解羧酸与醇合成酯的一般原理和方法2、进一步掌握蒸馏、用分液漏斗萃取,液体干燥等基本操作。

二、实验原理乙酸和乙醇在浓H 2SO 4催化下生成乙酸乙酯浓H 2SO 4CH 3COOH+CH 3CH 2OH CH 3COOCH 2CH 3+H 2O110~120℃温度应控制在110~120℃之间,不宜过高,因为乙醇和乙酸都易挥发。

这是一个可逆反应,生成的乙酸乙酯在同样的条件下又水解成乙酸和乙醇。

为了获得较高产率的酯,通常采用增加酸或醇的用量以及不断移去产物中的酯或水的方法来进行。

本实验采用回流装置及使用过量的乙醇来增加酯的产率。

反应完成后,没有反应完全的CH 3COOH.CH 3CH 2OH 及反应中产生的H 2O 分别用饱和Na 2CO 3,饱和Cacl 2及无水Na 2SO 4(固体)除去。

三、仪器与试剂1、仪器:铁架台、圆底烧瓶、(带支管)蒸馏烧瓶、球形冷凝管、直形冷凝管、橡皮管、温度计、分液漏斗、小三角烧瓶、烧杯。

2、试剂:冰醋酸、95%乙醇(化学纯)饱和Na 2CO 3 溶液、饱和Nacl 溶液,固体无水Na 2SO 4、沸石、饱和Cacl 2溶液。

四、实验步骤:用量筒分别量取12ml CH 3COOH 、19ml CH 3CH 2OH 及5ml 浓H 2SO 4,置于圆底烧瓶中,充分混合后,按书中装置装好,再加入几粒沸石,加热前先 通水→滴的速度即可控制回流速度以每秒钟加热回流130分钟转移圆底烧瓶中液体到蒸馏烧瓶中于小烧杯中蒸出见实验二采用蒸馏装置ml 20)(→ →溶液饱和加入3210CO Na ml →至分液漏斗转移混合液分去下层水层→溶液饱和加Nacl m l 10分去下层水层→溶液饱和加入210Cacl ml 分去下层水层→溶液饱和加210Cacl ml 分去水层小三角烧瓶中上层酯层转移至加入固体Na 2SO 4干燥15分钟,最后用量筒量取产品有多少ml 或用天平称量所得产品质量。

工程材料实验指导书(附参考答案)西南交通大学

工程材料实验指导书(附参考答案)西南交通大学

⼯程材料实验指导书(附参考答案)西南交通⼤学⼯程材料实验指导书陈俊英⾼国庆杨萍编冷永祥万国江王良辉西南交通⼤学材料系2011 年10 ⽉实验须知1. 实验不得⽆故缺席,否则取消期未考试资格;2. 实验前认真做好预习,明确实验⽬的和原理,了解实验内容和步骤,以及注意事项;3. 实验过程中必须服从指导教师的指导,严格遵守安全及设备操作规章制度;4. 损坏设备、仪器根据情节轻重按学校规定进⾏全部或部分赔偿;5. 在实验过程中认真记录好实验数据,实验完毕后,实验数据及结果经指导教师认可并签字后⽅能离开实验室;6.,实验报告格式在本指导书后;交实验报告时同时还必须附上指导教师签字的实验数据及结果;7. 实验⼀⾄实验五在⽹上进⾏,⽹址是:/doc/931f19cdbfd5b9f3f90f76c66137ee06eff94e82.html /,进⼊材料系主页后,到⼯程材料精品课程⽹页的⽹上实验相应拦⽬中,时间在相应教学内容结束后⾃⼰安排,实验报告在所有实验结束后统⼀交;8. 实验六(材料综合实验)在材料实验室进⾏,具体时间在相应教学内容结束后安排。

9. 实验部分成绩占期末总成绩的20%,即20分;10. 在考试内容中涉及实验内容部分占20-30%,即20-30分。

⽬录实验实验⼀⾦属材料的硬度和冲击韧性测定┅┅┅┅┅┅┅┅┅┅( 3)实验⼆铁碳合⾦组织观察第⼀实验部分铁碳合⾦平衡显微镜组织观察┅┅┅┅┅┅( 5)第⼆实验部分铁碳合⾦⾮平衡显微镜组织观察┅┅┅┅┅( 7)实验三铸铁⾦相组织观察┅┅┅┅┅┅┅┅┅┅┅┅┅┅┅┅( 9)实验四有⾊⾦相组织观察┅┅┅┅┅┅┅┅┅┅┅┅┅┅┅┅(10)实验五常规热处理┅┅┅┅┅┅┅┅┅┅┅┅┅┅┅┅┅┅┅(11)实验六综合实验┅┅┅┅┅┅┅┅┅┅┅┅┅┅┅┅┅┅┅┅(12)附录附录⼀┅┅┅┅┅┅┅┅┅┅┅┅┅┅┅┅┅┅┅┅┅┅┅┅┅(14)附录⼆┅┅┅┅┅┅┅┅┅┅┅┅┅┅┅┅┅┅┅┅┅┅┅┅┅(20)附录三┅┅┅┅┅┅┅┅┅┅┅┅┅┅┅┅┅┅┅┅┅┅┅┅┅(24)实验报告实验报告⼀┅┅┅┅┅┅┅┅┅┅┅┅┅┅┅┅┅┅┅┅┅┅┅(28)实验报告⼆第⼀实验部分报告┅┅┅┅┅┅┅┅┅┅┅┅┅┅┅┅┅┅(30)第⼆实验部分报告┅┅┅┅┅┅┅┅┅┅┅┅┅┅┅┅┅┅(32)实验报告三┅┅┅┅┅┅┅┅┅┅┅┅┅┅┅┅┅┅┅┅┅┅┅(34)实验报告四┅┅┅┅┅┅┅┅┅┅┅┅┅┅┅┅┅┅┅┅┅┅┅(35)实验报告五┅┅┅┅┅┅┅┅┅┅┅┅┅┅┅┅┅┅┅┅┅┅┅(36)综合实验报告┅┅┅┅┅┅┅┅┅┅┅┅┅┅┅┅┅┅┅┅┅┅(37)实验⼀⾦属材料的硬度和冲击韧性测定⼀、实验⽬的1. 了解材料硬度测定原理及⽅法;2. 了解布⽒和洛⽒硬度的测量范围及其测量步骤和⽅法;3. 了解显微硬度的测量范围及⽅法;4. 了解冲击韧性设备的测定原理、⽅法;5. 了解脆性、韧性材料冲击后的断⼝及冲击值的区别。

微生物实验报告思考题参考答案

微生物实验报告思考题参考答案

实验一、微生物的简单染色思考题1油镜与普通物镜在使用方法上有何不同?应特别注意些什么?答:油镜在使用时必须在载玻片与物镜之间滴加镜头油。

油镜使用过程中要注意两点:(1)、使用后镜头的清洁:镜面只能用擦镜纸擦,不能用手指或粗布,以保证光洁度,用完油镜必须进行“三擦”(观察完毕,上悬镜筒,先用擦镜纸擦去镜头上的油,然后再用擦镜纸沾取少量二甲苯(或者乙醇乙醚溶液)擦去残留的油,最后用擦镜纸擦去残留的二甲苯,后将镜体全部复原)。

(2)、.观察标本时,必须依次用低、中、高倍镜,最后用油镜。

当目视接目镜时,特别在使用油镜时,切不可使用粗调节器,以免压碎玻片或损伤镜面。

2、使用油镜时,为什么必须用镜头油?答:在使用普通显微镜时,当光线由反光镜通过玻片与镜头之间的空气时,由于空气与玻片的密度不同,使光线受到曲折,发生散射,降低了视野的照明度。

若中间的介质是一层油(其折射率与玻片的相近),则几乎不发生折射,增加了视野的进光量,从而使物象更加清晰。

3、镜检标本时,为什么先用低倍镜观察,而不是直接用高倍镜或油镜观察?答:低倍镜视野比较大,能看到的范围大,容易找到观察的目标,然后在用放大倍数高的高倍镜或油镜有目的的观察。

实验二、革兰氏染色(1)为什么必须用培养24 h以内的菌体进行革兰氏染色?答:24h以内的菌体处于活跃生长期,菌体细胞壁具有典型特征,而处于老龄的革兰氏阳性细菌壁结构开始发生变化,染色时会被染成红色而造成假阴性(2)要得到正确的革兰氏染色结果,必须注意哪些操作?哪一步是关键步骤?为什么?答:应注意如下几点:其一,选用活跃生长期菌种染色,老龄的革兰氏阳性细菌会被染成红色而造成假阴性;其二,涂片不宜过厚,以免脱色不完全造成假阳性;其三,脱色是革兰氏染色是否成功的关键,脱色不够造成假阳性,脱色过度造成假阴性(3)当你对未知菌进行革兰氏染色时,怎样保证操作正确,结果可靠?答:当要确证未知菌的革兰氏反应时,可用已知菌进行混合涂片,使二者染色条件保持一致,如果已知菌的结果与预期相符,则证明操作操作正确,结果可靠。

实验思考题参考答案(2)

实验思考题参考答案(2)
1、影响豆豉鲮鱼质量的因素有哪些? 原料选择与整理、盐腌、清洗、调味汁的配制、油炸、 浸调味汁、装罐、排气及密封、杀菌和冷却。 2、油炸调味的关键问题是什么? 油炸的关键是油炸程度的掌握,要炸至鱼体呈浅茶褐色, 炸透而不过干为准;调味的关键是浸泡时间,以40s 为宜。
ቤተ መጻሕፍቲ ባይዱ
实验七
脱水蒜片的制作
1、蒜片护色的原理是什么? • 使蔬菜处于碱性环境中,防止蔬菜体内叶绿素在酸性条 件下被破坏。
实验八 糖水桔子罐头的制作
1、糖水水果加工中变色的主要因素有哪些?怎样防止变 色? • 原料的品种和成熟度、加工和杀菌的温度、成品储藏的 温度。 • 控制原料的品种和成熟度;严格各工序的操作;在罐内 加入某些保护剂或酶类。
实验五 蛋黄酱的制作 1、各组分在蛋黄酱中的作用是什么? 蛋黄在该体系中发挥乳化剂的作用;油、醋、盐、糖除调 味的作用以外,还在不同程度上起到防腐、稳定产品的作 用;香辛料主要是增加产品的风味。 2、乳化的操作条件对产品的质量有何影响? 影响产品的稠度和口感。
实验六 调味类罐头(豆豉鲮鱼)的制作 调味类罐头(豆豉鲮鱼)

数据库实验五题目答案

数据库实验五题目答案

实验五实验5.1 数据查询1)要求以School数据库为例,在该数据库中存在四张表格,分别为:●表STUDENTS(sid, sname, email, grade);●表TEACHERS(tid, tname, email, salary);●表COURSES(cid, cname, hour);●表CHOICES(no, sid, tid, cid, score)在数据库中,存在这样的关系:学生可以选择课程,一个课程对应一个教师。

在表CHOICES中保存学生的选课记录。

按以下要求对数据库进行查询操作:(1)查询年级为2001的所有学生的名称并按编号升序排列。

程序:Select snamefrom studentswhere grade='2001'order by sid asc;(2)查询学生的选课成绩合格的课程成绩。

程序:Select scorefrom choiceswhere score>'59';(3)查询课时是48或60的课程的名称。

程序:select cnamefrom courseswhere hour='48'or hour='60';(4)查询所有课程名称中含有data的课程编号。

程序:select cidfrom courseswhere cname like'%data%';(5)查询所有选课记录的课程号(不重复显示)。

程序:select distinct cidfrom choices;(6)统计所有教师的平均工资。

程序:select avg(salary)from teachers;(7)查询所有教师的编号及选修其课程的学生的平均成绩,按平均成绩降序排列。

程序:select tid,avg(score)from choicesGROUP BY tidorder by avg(score)desc;(8)统计各个课程的选课人数和平均成绩。

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

实验五3. 在项目中设计如下查询,单号题用select命令(写到程序中),双号题用查询设计器:注意:查询前先打开“学生-课程”数据库,并且设为当前库(1)创建程序文件Q1,用select命令查询“计算机”系的学生的学号、姓名、和出生日期,结果按学号升序排。

运行程序查看运行结果。

使用设计器设计:添加表:学生表“字段”选项卡:学号、姓名、出生日期“筛选”选项卡:所在系=’计算机’“排序”选项卡:学号升序使用命令:SELECT 学号,姓名,出生日期;FROM学生;WHERE所在系= "计算机";ORDER BY学号查询结果如下:(2)创建查询文件Q2,查询“计算机”系的学生的姓名、性别、年龄,结果按年龄升序排。

运行查询文件查看运行结果。

使用设计器设计:添加表:学生表“字段”选项卡:姓名、性别、YEAR(DATE())-YEAR(学生.出生日期) AS 年龄“筛选”选项卡:所在系=’计算机’“排序依据”选项卡:YEAR(DATE())-YEAR(学生.出生日期) AS 年龄使用命令:SELECT姓名,性别, YEAR(DATE())-YEAR(学生.出生日期) AS 年龄;FROM学生;ORDER BY 3查询结果如下:(3)创建程序文件Q3,用select命令查询都有哪些系,要求系不能重复。

运行程序查看运行结果。

使用设计器设计:添加表:学生表“字段”选项卡:所在系“杂项”选项卡:选中“无重复记录”复选框使用命令:SELECT DISTINCT 所在系FROM学生查询结果如下:(4)创建查询文件Q4,查询选了“001”号课的学生的姓名和成绩,结果按成绩降序排,结果放到表“成绩001号课”表中。

运行查询文件,将存放查询结果的文件添加到项目的自由表中,浏览该自由表从而查看查询结果。

使用设计器设计:添加表:学生表、选课表“字段”选项卡:姓名、成绩“联接”选项卡:inner join 学生.学号=选课.学号“筛选”选项卡:课程号=’001’“排序依据”选项卡:成绩降序“查询去向”:表“成绩001号课”使用命令:SELECT姓名,成绩;FROM学生INNER JOIN选课ON 学生.学号= 选课.学号;WHERE课程号= "001";ORDER BY成绩DESCINTO TABLE 成绩001号课查询结果如下:(5)创建程序文件Q5,用select命令查询“计算机”系学生选了“001”号课学生的姓名、成绩,结果按成绩降序排。

运行程序查看运行结果。

使用设计器设计:添加表:学生表、选课表“字段”选项卡:姓名、成绩“联接”选项卡:inner join 学生.学号=选课.学号“筛选”选项卡:所在系=’计算机’ and课程号=’001’“排序依据”选项卡:成绩降序使用命令:SELECT姓名,成绩;FROM 学生INNER JOIN选课ON 学生.学号= 选课.学号;WHERE所在系= "计算机" AND课程号= "001";ORDER BY成绩DESC查询结果如下:(6)创建查询文件Q6,查询成绩在80及80分以上的学生的姓名、课程名和成绩,输出时先按课程名升序排,课程名一样的再按成绩降序排。

运行查询文件查看运行结果。

使用设计器设计:添加表:学生表、选课表、课程表“字段”选项卡:姓名、课程名、成绩“联接”选项卡:inner join 学生.学号=选课.学号inner join 课程.课程号=选课.课程号“筛选”选项卡:成绩>=80“排序依据”选项卡:课程名升序、成绩降序使用命令:SELECT姓名,课程名,成绩;FROM学生INNER JOIN选课INNER JOIN课程;ON 课程.课程号=选课.课程号ON 学生.学号=选课.学号;WHERE成绩>= 80;ORDER BY课程名,成绩DESC查询结果如下:(7)创建程序文件Q7,用select命令查询平均成绩大于等于80的学生的学号、姓名平均成绩。

运行程序查看运行结果。

使用设计器设计:添加表:学生表、选课表“字段”选项卡:学号、姓名、AVG(选课.成绩) AS 平均成绩“联接”选项卡:inner join 学生.学号=选课.学号“分组依据”选项卡:学号“满足条件”(筛选组):平均成绩>=80“排序依据”选项卡:学号升序使用命令:SELECT 学生.学号, 姓名, AVG(选课.成绩) AS 平均成绩;FROM 学生INNER JOIN选课ON 学生.学号= 选课.学号;GROUP BY 学生.学号;HAVING 平均成绩=>80查询结果如下:(8)创建查询文件Q8,查询各科成绩的最高分。

结果包括课程名和最高分两列。

运行查询文件查看运行结果。

使用设计器设计:添加表:课程表、选课表“字段”选项卡:课程名、MAX(选课.成绩) AS 最高分“联接”选项卡:inner join 课程.课程号=选课.课程号“分组依据”选项卡:课程名使用命令:SELECT课程名, MAX(选课.成绩) AS 最高分;FROM课程INNER JOIN选课ON课程.课程号= 选课.课程号;GROUP BY 课程.课程名查询结果如下:(9)创建程序文件Q9,用select命令查询选课人数多于10人的课程名和选课人数。

运行程序查看运行结果。

使用设计器设计:添加表:课程表、选课表“字段”选项卡:课程名、COUNT(选课.学号) AS 选课人数“联接”选项卡:inner join 课程.课程号=选课.课程号“分组依据”选项卡:课程名“满足条件”(筛选组):选课人数>=10使用命令:SELECT 选课.课程名, COUNT(选课.学号) AS 选课人数;FROM 课程INNER JOIN选课ON 课程.课程号= 选课.课程号;GROUP BY 选课.课程名;HAVING 选课人数=>10查询结果如下:(10)创建查询文件Q10,查询数学成绩前5名的学生的姓名和数学成绩。

运行查询文件查看运行结果。

使用设计器设计:添加表:学生表、选课表、课程表“字段”选项卡:姓名、成绩“联接”选项卡:inner join 学生.学号=选课.学号inner join 课程.课程号=选课.课程号“筛选”选项卡:课程名=’数学’“排序依据”选项卡:成绩降序“杂项”:不选“全部”复选框,“记录个数”改成5使用命令:SELECT TOP 5 姓名,成绩;FROM学生INNER JOIN选课INNER JOIN课程;ON 课程.课程号= 选课.课程号ON 学生.学号= 选课.学号;WHERE 课程名= "数学";ORDER BY 成绩DESC查询结果如下:4. 打开“客户管理”项目,打开“订货管理”数据库,在该项目中使用查询设计器设计如下查询:习题13(271页)第三题的1、2、3、4、5题。

注意:查询前先打开“订货管理”数据库并设为当前库。

(1)查询客户名为“三益贸易公司”的订购单明细,结果先按“订单号”升序排,同一订单的再按“单价”降序排。

结果存到results14_1中。

使用设计器:添加表:customer、order_list、order_detail“字段”选项卡:order_detail表中的所有字段“联接”选项卡:inner join customer.khh=order_list.khhInner join order_list.ddh= order_detail.ddh“筛选”选项卡:customer.khm=’益贸易公司’“排序依据”选项卡:ddh升序、dj降序“分组依据”选项卡:“杂项”选项卡:“查询去向”:表“results14_1”使用命令:SELECT Order_detail.*;FROM customer INNER JOIN order_list INNER JOIN order_detail ;ON Order_list.ddh = Order_detail.ddh ON Customer.khh = Order_list.khh;WHERE Customer.khm = "三益贸易公司";ORDER BY Order_detail.ddh, Order_detail.dj DESC;INTO TABLE results14_1.dbf查询结果:(2)查询目前有订购单的客户信息,即有对应的order_list记录的customer表中的记录,同时要求按khh升序排,将结果存到results14_2中。

使用设计器:添加表:customer、order_list“字段”选项卡:customer表中的所有字段“联接”选项卡:inner join customer.khh=order_list.khh“排序依据”选项卡:customer.khh“杂项”选项卡:选中复选框“无重复记录”“查询去向”:表“results14_2”使用命令SELECT DISTINCT Customer.*;FROM customer INNER JOIN order_list ;ON Customer.khh = Order_list.khh;ORDER BY Customer.khh;INTO TABLE results14_2.dbf查询运行结果:(3)查询所有订购单的订单号、订购日期、和总金额,按订单号升序排,将查询结果存储到表results14_3中。

使用设计器:添加表:order_list、order_detail“字段”选项卡:ddh、dgrq、qjh、qjm、SUM(dj*sl) as 总金额“联接”选项卡:Inner join order_list.ddh= order_detail.ddh“排序依据”选项卡:ddh“分组依据”选项卡:ddh“查询去向”:表“results14_3”使用命令:SELECT Order_list.ddh, dgrq, SUM(dj* sl) as 总金额;FROM order_list INNER JOIN order_detail ON Order_list.ddh = Order_detail.ddh;GROUP BY Order_list.ddh;ORDER BY Order_list.ddh;INTO TABLE results14_3.dbf查询运行结果:(4)按总金额降序排列出所有客户的客户号、客户名及其订单号和总金额,将查询结果存到表results14_4中。

使用设计器:添加表:customer、order_list、order_detail“字段”选项卡:khh、khm、ddh、SUM(dj*sl) as 总金额“联接”选项卡:inner join customer.khh=order_list.khhInner join order_list.ddh= order_detail.ddh“排序依据”选项卡:SUM(dj*sl) as 总金额降序“分组依据”选项卡:ddh“查询去向”:表“results14_4”使用命令SELECT Customer.khh, khm, Order_list.ddh, SUM(dj*sl) as 总金额;FROM customer INNER JOIN order_list INNER JOIN order_detail ;ON Order_list.ddh = Order_detail.ddh ;ON Customer.khh = Order_list.khh;GROUP BY Order_list.ddh;ORDER BY 4 DESC;INTO TABLE results14_4.dbf查询运行结果:(5)对表order_detail建立查询,把“订单号”的尾部字母相同且订货相同(即“器件号”相同)的订单合并成一张订单,新的“订单号”取原来的尾部字母,“单价”取最低价,“数量”取合计,查询结果先按新的“订单号”升序排,再按“器件号”升序排,将查询结果存到表results14_5中。

相关文档
最新文档