单选题若对一个已经排好序的序列进行排序,在下列四种方法中,哪种方法比较好( )。
单选题新奥尔良方法将数据库设计过程分为4个阶段,他们是A) 需求分析、概念结构设计、逻辑结构没计和物理设计B) 用户分析、物理结构设计、存储结构设计、用户使用设计C) 需求分析、逻辑结构设计、存储结构设计、使用设计D) 用户分析、物理设计、存储设计、存取设计
单选题数据库系统的体系结构,按照ANSI/SPARC报告应划分为( )。
单选题设U为所有属性,X、Y、Z为属性集,Z=U-X-Y。下面关于平凡的多值依赖的叙述中,哪一条是正确的?()A.若X→→Y,且,则称X→→Y为平凡的多值依赖B.若X→→Y,且,则称X→→Y为平凡的多值依赖C.若X→Y,且X→→Y,则称X→→Y为平凡的多值依赖D.若X→→Y,且X→→Z,则称X→→Y为平凡的多值依赖
单选题常用的虚拟存储器寻址系统由( )组成。
单选题系统判断进程的唯一实体是______。
单选题给定如下三个关系表:销售明细表(商品标识,销售时间,单价,数量,金额)日销售表(商品标识,销售日,总数量,总金额)月销售额(商品标识,销售月份,总数量,总金额)下列说法正确的是( )
单选题以下( )不是进程通信的方式。 A.共享内存 B.DMA通信 C.消息机制 D.管道通信
单选题 (30)~(32) 题基于“学生—选课—课程”数据库中的三个关系:
S(S#,SNAME,SEX,AGE,DEPARTMENT),主码是S#
C(C#,CNAME,TEACHER),主码是C# SC(S#,C#,GRADE),主码是(S#,C#)
单选题在TCP/IP参考模型中,传输层主要提供目的主机与源主机之间( )。
单选题设两个关系C和SC如表13-6和表13-7所示,它们的主键分别为C#和(S#,C#),除属性GRADE的数据类型是整数外,其他属性的数据类型都是字符型。若要向关系SC执行下列插入操作,哪一个元组可以被插入?()。
单选题下列各项中哪一个不是虚拟页式存储管理中缺页中断处理所做的工作? A) 通过文件系统将所需页面从外存调入内存 B) 调用内存分配程序 C) 修改页表 D) 调度被中断程序继续执行
单选题第(34)和(35)题的关系代数操作基本如下的关系R和S:若关系R和S的关系代数操作的结果如下,这是执行了
单选题下列哪一个不属于故障的主要类型?
单选题若有关系模式R(A,B,C) ,下列叙述中________是正确的。 Ⅰ.AB→→C一定成立 Ⅱ.A→→BC一定成立 Ⅲ.AB→C一定成立 Ⅳ.A→BC一定成立
单选题设在SQL Server 2008中,用户U1是某数据库中db_datawriter角色中的成员。有下列针对该数据库的操作语句
Ⅰ.SELECT * FROM T
Ⅱ.DELETE FROM T
Ⅲ.UPDATE T SET C1 = 100
Ⅳ.INSERT INTO T VALUES ...
上述语句中,U1有权执行的是______。
问答题有表SCORE(Sno,Cno,Degree),查询该表中最高分的学生学号和课程号: SELECT____________ FROM SCORE WHERE Degree=____________;
问答题已知在IN.DAT文件中存有100个产品销售记录,每个产品销售记录由产品代码dm(字符型4位)、产品名称mc(字符型10位)、单价dj(整型)、数量sl(整型)、金额je(长整型)五部分组成。其中:金额=单价×数量。函数ReadDat()是读取这100个销售记录并存入结构数组sell中。请编写函数SortDat(),其功能是:按金额从小到大进行排列,若金额相等,则按产品代码从小到大进行排列,最终排列结果仍存入结构数组sell中,最后调用函数WriteDat(),把结果输出到OUT.DAT文件中。
注意:部分源程序已经给出。
请勿改动主函数main()、读数据函数ReadDat()和输出数据函数WriteDat()的内容。
#include <stdio.h>
#include <string.h>
#include <conio.h>
#include <stdlib.h>
#define MAX 100
typedef struct
{
char dm[5]; /*产品代码*/
char mc[11]; /*产品名称*/
int dj; /*单价*/
int sl; /*数量*/
long je; /*金额*/
} PRO;
PRO sell[MAX];
void ReadDat();
void WriteDat();
void SortDat()
{
}
void main()
{
memset(sell,0,sizeof(sell));
ReadDat();
SortDat();
WriteDat();
void ReadDat()
{
FILE *fp;
char str[80],ch[11];
int i;
fp=fopen("IN.DAT","r");
for(i=0;i<100;i++)
{
fgets(str,80,fp);
memcpy(sell[i].dm,str,4);
memcpy(sell[i].mc,str+4,10);
memcpy(ch,str+14,4);
sell[i].dj=atoi(ch);
memcpy(ch,str+18,5);
sell[i].sl=atoi(ch);
sell[i].je=(long)sell[i].dj*sell[i].sl;
}
fclose(fp);
}
void WriteDat()
FILE *fp;
int i;
fp=fopen("OUT.DAT","w");
for(i=0;i<100;i++)
{
printf("%s %s %4d %5d %5d/n",
sell[i].dm,sell[i].mc,sell[i].dj,sell[i].sl,sell[i].je);
fprintf(fp,"%s %d %4d %5d %5d/n",
sell[i].dm,sell[i].mc,sell[i].dj,sell[i].sl,sell[i].je);
}
fclose(fp);
问答题已知在IN.DAT文件中存有100个产品销售记录,每个产品销售记录由产品代码dm(字符型4位)、产品名称mc(字符型10位)、单价dj(整型)、数量sl(整型)、金额je(长整型)五部分组成。其中:金额=单价×数量。函数ReadDat()是读取这100个销售记录并存入结构数组sell中。请编写函数SortDat(),其功能是:按金额从小到大进行排列,若金额相同,则按产品代码从大到小进行排列,最终排列结果仍存入结构数组sell中,最后调用函数WriteDat(),把结果输出到OUT.DAT文件中。 注意:部分源程序已经给出。 请勿改动主函数main()、读数据函数ReadDat()和输出数据函数WriteDat()的内容。 #include<stdio.h> #include<string.h> #include<conio.h> #include<stdlib.h> #define MAX 100 typedef struct char dm[5]; /*产品代码*/ char mc[11]; /*产品名称*/ int dj; /*单价*/ int sl; /*数量*/ long je; /*金额*/ PRO; PRO sell[MAX]; void ReadDat(); void WriteDat(); void SertDat() void main() memset(sell,0,sizeof(sell)); ReadDat(); SortDat(); WriteDat(); void ReadDat() FILE *fp; char str[80],ch[11]; int i; fp=fopen("IN.DAT","r"); for(i=0;i<100;i++) fgets(str,80,fp); memcpy(sell[i].dm,Str,4); memcpy(sell[i].mc,str+4,10); memcpy(ch,str+14,4); ch[4]=0; sell[i].dj=atoi(ch); memcpy(ch,str+18,5); ch[5]=0; sell[i].sl=atoi(ch); sell[i].je=(long)sell[i].dj*sell[i].sl; fclose(fp); void WriteDat(void) FILE *fp; int i; fp=fopen("OUT.DAT","w"); for(i=0;i<100;i++) printf("%s%s%4d%5d%5d/n", sell[i].dm,sell[i].mc,sell[i].dj,sell[i].sl,sell[i].je); fprintf(fp,"%s%s%4d%5d%5d/n", sell[i].dm,sell[i].mc,sell[i].dj,sell[i].sl,sell[i].je); fclose(fp);
问答题已知数据文件in55.dat中存有300个4位数,并已调用读函数readDat()把这些数存入数组a中,请编制一函数JsValue(),其功能是:求出千位数上的数减百位数上数减十位数上的数减个位数上的数大于零的个数cnt,再求出所有满足此条件的4位数平均值pjz1,以及所有不满足此条件的4位数平均值pjz2,最后调用函数writeDat()把结果cnt,pjz1,pjz2输出到out55.dat文件中。 例如:9123,9-1-2-3>0,则该数满足条件,计算平均值pj21,且个数cnt=cnt+1。 9812,9-8-1-2<0,则该数不满足条件,计算平均值pjz2。 注意:部分源程序已给出。 程序中已定义数组:a[300],已定义变量:cnt。 请勿改动主函数main()、读函数readDat()和写函数writeDat()的内容。 试题程序: #include int a[300], cnt=0; double pjz1=0.0,pjz2=0.0; jsValue() main() int i; readDat(); jsValue(); writeDat(); printf("cnt=%d/n满足条件的平均值pjz1=%7.2lf/n不满足条件的平均值 pjz2=%7.2lf/n",cnt,pjz1,pjz2); readDat() FILE*fp; int i; fp=fopen("in55.dat","r"); for(i=0;i<300;i++) fscanf(fp,”%d,”,&a[i]); fclose(fp); writeDat() FILE*fp; int i; fp=fopen("out55.dat","N"); fprintf(fp,"%d/n%7.2lf/n%7.2lf/n",cnt ,pjz1,pjz2); fclose(fp);
