内容正文:
重庆市2025年对口招生考试计算机类
专业综合模拟卷(三)
(本试题卷共5大题,88小题,共16页。时量150分钟,满分390分。)
1、 单项选择题(共35小题,每小题3分,共105分)
1. 下列哪个不是电子邮件系统提供的服务功能?( )
A. 创建与发送电子邮件
B. 接收电子邮件
C. 通知电子邮件到达
D. 管理
【答案】C
2. 完成远程登录的TCP/IP协议是?( )
A. SMTP
B. FTP
C. SNMP
D. TELNET
【答案】D
3. 配置DNS服务器正确的是?( )
A. 使用IP地址标识
B. 使用域名标识
C. 使用主机名标识
D. 使用主机名加域名标识
【答案】A
4. 若有以下语句:static char x[]="12345"; static char y[]={'1','2','3','4','5'}; 则正确的说法是?( )
A. x数组和y数组的长度相同
B. x数组的长度大于y数组的长度
C. x数组的长度小于y数组的长度
D. x数组与y数组等价
【答案】B
5. 在C++语言中,定义数组后,使用数组元素时,数组下标可以是?( )
A. 整型常量
B. 整型表达式
C. 整型常量或整型表达式
D. 任何类型的表达式
【答案】C
6. 在下面的一维数组定义中,哪一个有语法错误?( )
A. int a[];
B. int a[]={1,2,3};
C. int a[5];
D. int a[10]={0};
【答案】A
7. 在显示下拉菜单中,单击“追加方式”选项,将在当前表( )。
A. 中插入一个空记录
B. 尾增加一个空记录
C. 中进入追加状态
D. 上弹出追加对话框
【答案】C
8. 显示表中所有教授和副教授记录的命令是( )。
A. LIST FOR 职称="教授" AND 职称="副教授"
B. LIST FOR 职称>="副教授"
C. LIST FOR 职称="教授" OR 职称="副教授"
D. LIST FOR "教授"$职称
【答案】C
9. 同一个表所有备注字段的内容存储在( )。
A. 该表文件中
B. 不同的备注文件
C. 同一个备注文件
D. 同一个数据库文件
【答案】C
10. 如果访问Internet时只能使用IP地址,是因为没有配置TCP/IP的?( )
A. IP地址
B. 子网掩码
C. 默认网关
D. DNS
【答案】D
11. 局域网LAN所采用的传输方式为?( )
A. “存储--转发”式
B. 广播式
C. 电路交换式
D. 分散控制式
【答案】B
12. 因特网(Internet)的起源可追溯到它的前身?( )
A. ARPANET
B. DEet
C. NSFNET
D. Ethernet
【答案】A
13. 在声明语句const char *ps;中,ps表示?( )
A. 指向字符串的指针
B. 指向字符串的const型指针
C. 指向const型字符串的指针
D. 指向const型字符串的const型指针
【答案】C
14. 若有语句:int x[]={1,2,3,4,5}; int *ptr; ptr=x; 则以下哪项是对数组元素x[1]的正确引用?( )
A. ptr+1
B. *ptr+1
C. *(ptr+1)
D. *ptr++
【答案】C
15. 在int k=8, *p=&k中,*p的值是?( )
A. 指针变量p的地址值
B. 变量k的地址值
C. 8
D. 无意义
【答案】C
16. 在VFP中,主索引可在( )中建立。
A. 自由表
B. 数据库表
C. 任何表
D. 自由表和视图
【答案】B
17. 打开一个建立了结构复合索引的数据表,表记录的顺序将按( )。
A. 第一个索引标识
B. 最后一个索引标识
C. 主索引标识
D. 原顺序
【答案】D
18. 在Visual FoxPro的参照完整性规则不包括( )。
A. 更新规则
B. 删除规则
C. 查询规则
D. 插入规则
【答案】C
19. 在局域网中,由于距离近以及数字电路器件价格的下降,更具优越性的传输技术是?( )
A. 模拟传输
B. 数字传输
C. 模拟-数字混合传输
D. 以上均不对
【答案】B
20. 从互联网络的结构看,网桥属于DCE级的端到端的连接,从协议层次看,网桥工作于?( )
A. 物理层范畴
B. 链路层范畴
C. 网络层范畴
D. 传输层范畴
【答案】B
21. 在TCP/IP体系结构中,TCP和IP所提供的服务层次分别为?( )
A. 应用层和运输层
B. 运输层和网络层
C. 网络层和链路层
D. 链路层和物理层
【答案】B
22. 设int a=5, b=9, c=15,表达式(a+B./c||(a<B.&&(a%B.的值为?( )
A. 0
B. 2
C. 1
D. -1
【答案】C
23. 若变量c为char类型,能正确判断出c为小写字母的表达式是?( )
A. 'a'<=c<='z'
B. (c>='a')||(c<='z')
C. ('a'<=C.and('z'>=C.
D. (c>='a')&&(c<='z')
【答案】D
24. 以下哪项是不正确的描述?( )
A. while循环先判断表达式,后执行循环体语句
B. do-while循环先执行循环语句,后判断表达式
C. while,do-while 循环效果完全一样,不会出现不一致情况
D. for循环可以用while语句代替
【答案】C
25. 工资表文件已打开,且已设定按基本工资升序的索引为主控索引,并执行过赋值语句NN=900,下面各条命令中,错误的是( )。
A. SEEK NN
B. LOCATE FOR 基本工资==NN
C. FIND 900
D. LOCATE FOR 基本工资=NN
【答案】B
26. 在VFP中,数据库表和自由表的字段名最大字符数分别是( )。
A. 10,10
B. 128,10
C. 256,128
D. 128,128
【答案】B
27. 下列关于索引的叙述中错误的是( )。
A. VFP中的索引类型共有4种,分别是主索引,候选索引,普通索引和唯一索引
B. 在用命令方式建立索引时,可以建立普通索引,唯一索引(UNIQUE)或候选索引(CANDIDATE),但是不能建立主索引
C. 在表设计器的字段选项卡中建立的索引默认为普通索引
D. 在数据库设计器中建立两表之间的永久关系时,只须在父表中建立主索引,然后拖动该索引项到子表中的相应字段上既可
【答案】D
28. 在Internet中,ISP的接入方式有帧中继方式、专线(DDN)方式及?( )
A. ISDN方式
B. 仿真终端方式
C. 局域网连接方式
D. 广域网连接方式
【答案】A
29. 采用100BASE-T物理层媒体规范,其数据速率及每段长度分别为?( )
A. 100Mbps, 200m
B. 100Mbps, 100m
C. 200Mbps, 200m
D. 200Mbps, 100m
【答案】B
30. 网页文件的编写语言及相应的支持协议分别为?( )
A. HTML,HTPT
B. HTTL,HTTP
C. HTML,HTTP
D. 以上均不对
【答案】C
31. 下列关于函数的参数的描述中,错误的是?( )
A. C语言函数的参数可以是多个
B. C语言函数参数可以0个
C. C语言函数的形参可以是指针或引用
D. C语言函数的形参与实参类型要求一致不是必需的。
【答案】D
32. 以下叙述中不正确的是?( )
A. 预处理命令都必须以#号开始
B. 在程序中凡是以#号开始的语句行都是预处理命令行
C. 宏替换不占用运行时间,只占编译时间
D. 在以下定义是正确的:#define PI 3.1415926;
【答案】D
33. 以下哪项能正确定义一维数组?( )
A. int a[5]={0,1,2,3,4,5};
B. char a[]={'0','1','2','3','4','5','\0'};
C. char a={'A','B','C'};
D. int a[5]="0123";
【答案】B
34. 在Visual FoxPro的数据工作期窗口,使用SET RELATION命令可以建立两个表之间的关联,这种关联是( )。
A. 永久性关联
B. 永久性关联或临时性关联
C. 临时性关联
D. 永久性关联和临时性关联
【答案】C
35. 在Visual Foxpro6.0中,打开数据库使用的命令为( )。
A. USE
B. SELECT
C. OPEN
D. CREATE
【答案】D
2、 判断题(共20小题,每小题3分,共60分)
1. 复选框控件可以有两种状态,分别是选中和未选中。( )
【答案】×
2. 在一个关系中任意交换两行的位置不影响数据的实际含义。( )
【答案】√
3. VFP中常量指的是在程序运行过程中不发生变化的量。( )
【答案】√
4. VFP命令格式不区分大小写。( )
【答案】√
5. 同一数组可以存储不同类型的值。( )
【答案】×
6. 若有语句:char *s1="string2";则语句strcpy("china",s1);是正确的。( )
【答案】×
7. C程序总是从main()函数的第一条语句开始执行的。( )
【答案】√
8. 在C程序中,赋值号( = )运算优先级别最低。( )
【答案】√
9. 网上计费查询时,依次输入帐号、主机、查询日期即可查询( )。
【答案】√
10. 泉州信息超市的网址是http:\www.qz.fj.net( )。
【答案】×
11. 在IE中,“搜索”按钮指的是搜索当前正在游览的网页上的内容( )。
【答案】×
12. 201.1.23.108是我们所说的域名( )。
【答案】×
13. VFP的菜单项随着用户的操作可以发生变化。( )
【答案】√
14. 在VFP6.0中,对于任何特定动词的子句和一些关键字,其顺序不能改变。( )
【答案】×
15. 视图可以更新源表中的数据。( )
【答案】√
16. Visual FoxPro6.0是一种关系型数据库管理系统。( )
【答案】√
17. C语言程序的变量必须先定义再使用。( )
【答案】√
18. 如果x>y或者a<b为真,表达式(x>y&&a<b)就为真。( )
【答案】×
19. 运算符/和%要求参加运算的对象均为整型数据。( )
【答案】×
20. 在C语言中,5种基本数据类型的存储空间长度的排列顺序为: char<int<long int <=float<double。( )
【答案】√
3、 填空题(共25题,每题4分,共100分)
1. SQL SELECT语句为了将查询结果存放到临时表中应该使用______短语。
【答案】Into cursor
2. 查询设计器的筛选选项卡用来指定查询的______。
【答案】查询条件
3. 网络服务器有文件服务器、异步通信服务器、打印服务器等,其中______是最基本的。
【答案】文件
4. 目前常用的网络连接器主要有中继器、网桥、______和网关。
【答案】路由器
5. 将计算机的输出通过数字信道传输的称为______。
【答案】数字通信
6. 以太网的拓扑结构大多采用总线型,允许电缆的最大长度为50m,传输速率为______。
【答案】10
7. 当a=3,b=2,c=1时,表达式 a>b>c 的值是______。
【答案】1
8. 定义一个指针p,它指向一个有6个整型元素的一维数组,定义语句为______。
【答案】int (*p)[6];
9. 定义一个指针数组p,它有4个元素,每个指针指向一个整型数据,定义语句为______。
【答案】int *p[4];
10. 赋值语句是由______加上一个分号构成。
【答案】赋值表达式
11. 通过Visual FoxPro的视图,不仅可以查询数据库表,还可以______数据库。
【答案】更新
12. 建立远程视图必须首先建立与远程数据库的______。
【答案】连接
13. 快捷菜单实质上是一个弹出式菜单。要将某个弹出式菜单作为一个对象的快捷菜单,通常是在对象的______事件代码中添加调用该弹出式菜单程序的命令。
【答案】Rightclick
14. 设计报表通常包括两部分内容:______和布局。
【答案】数据源
15. 以字符特征为代表的IP地址(又称IP名字地址)中包括计算机名、结构名、______和国家名。
【答案】网络分类名
16. 调制解调器是实现数字信号和______转换的设备。
【答案】模拟信号
17. 在计算机网络中,所谓的资源共享主要是指硬件、软件和______资源。
【答案】数据
18. 令牌型网采用的是一种______的介质访问控制协议。
【答案】无冲突
19. 构成数组的各个元素必须具有______的数据类型。
【答案】相同
20. 关系表达式 x+y>5 的相反表达式为______。
【答案】x+y<=5
21. 函数 strlen("1234\0xy") 的值为:______。
【答案】4
22. 函数的形参在未被调用前不分配空间,函数形参的______要和实参相同。
【答案】类型
23. 与Internet相连的每台计算机都必须指定一的______地址,称为IP地址。
【答案】惟一
24. Internet提供的主要服务有______、文件传输GTP、远程登录Telnet、超文本查询WWW等。
【答案】E-mail
25. 目前,局域网的传输介质主要有双绞线、______和光纤。
【答案】同轴电缆
4、 程序填空题(共12空,每空6分,共72分)
1. 编写一个程序创建一个新表 active_customers,其中只包含活跃客户的信息(即过去一年内下过订单的客户)。请根据提示填空。
CLOSE DATABASES ALL
OPEN DATABASE salesDB
USE customers
USE orders
SELECT c.customer_id, c.customer_name, c.contact_info ;
FROM customers AS c ;
JOIN orders AS o ON c.customer_id = o.customer_id ;
WHERE o.order_date >= ___(1)___ ;
INTO TABLE ___(2)___ ;
___(3)___
提示:
(1) 选择过去一年的订单。
(2) 导出到一个名为 active_customers 的新表。
(3) 确保没有重复的客户信息。
【答案】
(1) (DATE() - 365)
(2) active_customers
(3) GROUP BY c.customer_id
完整程序:
CLOSE DATABASES ALL
OPEN DATABASE salesDB
USE customers
USE orders
SELECT c.customer_id, c.customer_name, c.contact_info ;
FROM customers AS c ;
JOIN orders AS o ON c.customer_id = o.customer_id ;
WHERE o.order_date >= (DATE() - 365) ;
INTO TABLE active_customers ;
GROUP BY c.customer_id
2. 编写一个程序,更新 inventory 表中的产品库存,增加每种产品的数量 10%。请根据提示填空。
CLOSE DATABASES ALL
OPEN DATABASE warehouseDB
USE inventory
SCAN
REPLACE ___(1)___ WITH ___(2)___ * 1.10
ENDSCAN
___(3)___
提示:
(1) 替换库存数量字段。
(2) 原库存数量字段。
(3) 确保数据更改已保存。
【答案】
(1) quantity
(2) quantity
(3) TABLEUPDATE(.T.)
完整程序:
CLOSE DATABASES ALL
OPEN DATABASE warehouseDB
USE inventory
SCAN
REPLACE quantity WITH quantity * 1.10
ENDSCAN
TABLEUPDATE(.T.)
3. #include <stdio.h>
void bubbleSort(int arr[], int n) {
int i, j, temp;
for (i = 0; i < n - 1; i++) {
for (j = 0; j < n - i - 1; j++) {
if (arr[j] > arr[j + 1]) {
temp = arr[j];
arr[j] = ___(1)__;
arr[j + 1] = ___(2)___;
}
}
}
}
int main() {
int arr[] = {64, 34, 25, 12, 22, 11, 90};
int n = ___(3)___;
bubbleSort(arr, n);
printf("Sorted array: ");
for (int i = 0; i < n; i++) {
printf("%d ", arr[i]);
}
printf("
");
return 0;
}
【答案】
(1) arr[j + 1]
(2) temp
(3) sizeof(arr) / sizeof(arr[0])
4. #include <stdio.h>
int findMax(int arr[], int n) {
int max = arr[0];
for (int i = 1; i < n; i++) {
if (arr[i] > max) {
___(1)___;
}
}
return max;
}
int main() {
int numbers[] = {3, 5, 7, 2, 8, -1, 4, 10, 12};
int size = ___(2)___;
int maxValue = ___(3)___;
printf("Maximum value is %d
", maxValue);
return 0;
}
【答案】
(1) max = arr[i]
(2) sizeof(numbers) / sizeof(numbers[0])
(3) findMax(numbers, size)
5、 阅读程序,写出程序运行结果(共4小题,第1题11分,剩余每小题14分,共53分)
1. #include <stdio.h>
void mysteriousFunction(char *str) {
char *ptr = str;
while (*ptr != '\0') {
*ptr = *ptr ^ 0x20;
ptr++;
}
}
int main() {
char input[] = "Hello World!";
mysteriousFunction(input);
printf("%s
", input);
return 0;
}
(1) 在这一段代码中,mysteriousFunction 函数的作用是什么?
(2) 运行这段代码后,输出的结果是什么?
【答案】
(1) mysteriousFunction 函数的作用是将字符串中的每个字符与0x20进行按位异或操作。对于ASCII码来说,这个操作会翻转字母的大小写(如果是字母的话),因为大写字母和小写字母的区别正好是0x20(例如 'A' 为 0x41, 'a' 为 0x61)。
(2) 运行代码后,输出的结果是 "hELLO wORLD!"。这个函数将输入字符串的大小写进行了翻转。
2. #include <stdio.h>
#include <stdlib.h>
typedef struct Node {
int data;
struct Node* next;
} Node;
Node* reverseList(Node* head) {
Node* prev = NULL;
Node* current = head;
Node* next = NULL;
while (current != NULL) {
next = current->next;
current->next = prev;
prev = current;
current = next;
}
return prev;
}
void printList(Node* head) {
Node* temp = head;
while (temp != NULL) {
printf("%d ", temp->data);
temp = temp->next;
}
printf("
");
}
int main() {
Node* head = malloc(sizeof(Node));
head->data = 1;
head->next = malloc(sizeof(Node));
head->next->data = 2;
head->next->next = malloc(sizeof(Node));
head->next->next->data = 3;
head->next->next->next = NULL;
printf("Original List: ");
printList(head);
head = reverseList(head);
printf("Reversed List: ");
printList(head);
return 0;
}
(1) reverseList 函数实现了什么功能?
(2) 运行程序后,输出的结果是什么?
【答案】
(1) reverseList 函数的作用是反转一个单链表,使得链表的节点顺序颠倒。它通过遍历链表并逐个翻转节点的 next 指针来实现这一功能。
(2) 运行程序后,输出结果如下:
Original List: 1 2 3
Reversed List: 3 2 1
该程序首先输出了原始链表的顺序 "1 2 3",然后 reverseList 函数反转链表,最后输出 "3 2 1"。
3. CLOSE DATABASES ALL
OPEN DATABASE HR
USE Employees
* 根据部门ID分组,计算每个部门的平均工资
SELECT DepartmentID, AVG(Salary) AS AvgSalary ;
FROM Employees ;
GROUP BY DepartmentID ;
INTO CURSOR DeptAvgSalaries
* 输出所有平均工资大于4000的部门ID
SELECT * FROM DeptAvgSalaries WHERE AvgSalary > 4000 INTO ARRAY HighAvgSalaries
FOR i = 1 TO ALEN(HighAvgSalaries, 1)
? 'Department ID with high average salary: ', HighAvgSalaries[i, 1]
ENDFOR
* 查找工资最高的员工并输出其姓名
SELECT TOP 1 FirstName, LastName, Salary ;
FROM Employees ;
ORDER BY Salary DESC ;
INTO ARRAY TopEarner
IF ALEN(TopEarner, 1) > 0
? 'Top earning employee: ', TopEarner[1, 1], TopEarner[1, 2], ' with salary ', TopEarner[1, 3]
ELSE
? 'No employees found.'
ENDIF
CLOSE ALL
(1) 程序如何计算每个部门的平均工资?
(2) 如何提取并输出平均工资大于4000的部门ID?
(3) 程序如何找到并输出工资最高的员工姓名及其工资?
【答案】
(1) 程序使用 SQL 聚合函数 SELECT DepartmentID, AVG(Salary) AS AvgSalary FROM Employees GROUP BY DepartmentID 来计算每个部门的平均工资,并将结果存入游标 DeptAvgSalaries。
(2) 程序使用 SELECT * FROM DeptAvgSalaries WHERE AvgSalary > 4000 INTO ARRAY HighAvgSalaries 提取所有平均工资大于4000的部门ID,并通过 FOR...ENDFOR 循环输出每个符合条件的部门ID。
(3) 程序使用 SELECT TOP 1 FirstName, LastName, Salary FROM Employees ORDER BY Salary DESC INTO ARRAY TopEarner 找到工资最高的员工,并通过 IF ALEN(TopEarner, 1) > 0 检查是否找到结果,然后输出该员工的姓名和工资。
4. CLOSE DATABASES ALL
OPEN DATABASE Inventory
USE Products
* 增加每种产品售价的5%并更新记录
SCAN
REPLACE Price WITH Price * 1.05
ENDSCAN
* 列出所有库存低于100的产品名称和库存量
SELECT ProductName, Stock ;
FROM Products ;
WHERE Stock < 100 ;
INTO CURSOR LowStockProducts
GO TOP
DO WHILE NOT EOF()
? 'Product with low stock: ', LowStockProducts.ProductName, ' - ', LowStockProducts.Stock
SKIP
ENDDO
* 查找售价最高的产品并输出其名称和售价
SELECT TOP 1 ProductName, Price ;
FROM Products ;
ORDER BY Price DESC ;
INTO ARRAY HighestPricedProduct
IF ALEN(HighestPricedProduct, 1) > 0
? 'Highest priced product: ', HighestPricedProduct[1, 1], ' with price ', HighestPricedProduct[1, 2]
ELSE
? 'No products found.'
ENDIF
CLOSE ALL
(1) 程序如何对产品售价进行调整?
(2) 如何找出并列出所有库存低于100的产品?
(3) 程序是如何查找售价最高的产品并输出其信息的?
【答案】
(1) 程序使用 SCAN...ENDSCAN 结构遍历所有产品记录,通过 REPLACE Price WITH Price * 1.05 将每种产品的售价增加5%。
(2) 程序使用 SELECT ProductName, Stock FROM Products WHERE Stock < 100 INTO CURSOR LowStockProducts 选择库存低于100的产品,并通过 DO WHILE NOT EOF() 循环遍历游标 LowStockProducts,输出这些产品的名称和库存量。
(3) 程序使用 SELECT TOP 1 ProductName, Price FROM Products ORDER BY Price DESC INTO ARRAY HighestPricedProduct 找到售价最高的产品,并通过 IF ALEN(HighestPricedProduct, 1) > 0 检测该结果,然后输出该产品的名称和售价。
原创精品资源学科网独家享有版权,侵权必究!
学科网(北京)股份有限公司
$$
重庆市2025年对口招生考试计算机类
专业综合模拟卷(三)
(本试题卷共5大题,88小题,共16页。时量150分钟,满分390分。)
1、 单项选择题(共35小题,每小题3分,共105分)
1. 下列哪个不是电子邮件系统提供的服务功能?( )
A. 创建与发送电子邮件
B. 接收电子邮件
C. 通知电子邮件到达
D. 管理
2. 完成远程登录的TCP/IP协议是?( )
A. SMTP
B. FTP
C. SNMP
D. TELNET
3. 配置DNS服务器正确的是?( )
A. 使用IP地址标识
B. 使用域名标识
C. 使用主机名标识
D. 使用主机名加域名标识
4. 若有以下语句:static char x[]="12345"; static char y[]={'1','2','3','4','5'}; 则正确的说法是?( )
A. x数组和y数组的长度相同
B. x数组的长度大于y数组的长度
C. x数组的长度小于y数组的长度
D. x数组与y数组等价
5. 在C++语言中,定义数组后,使用数组元素时,数组下标可以是?( )
A. 整型常量
B. 整型表达式
C. 整型常量或整型表达式
D. 任何类型的表达式
6. 在下面的一维数组定义中,哪一个有语法错误?( )
A. int a[];
B. int a[]={1,2,3};
C. int a[5];
D. int a[10]={0};
7. 在显示下拉菜单中,单击“追加方式”选项,将在当前表( )。
A. 中插入一个空记录
B. 尾增加一个空记录
C. 中进入追加状态
D. 上弹出追加对话框
8. 显示表中所有教授和副教授记录的命令是( )。
A. LIST FOR 职称="教授" AND 职称="副教授"
B. LIST FOR 职称>="副教授"
C. LIST FOR 职称="教授" OR 职称="副教授"
D. LIST FOR "教授"$职称
9. 同一个表所有备注字段的内容存储在( )。
A. 该表文件中
B. 不同的备注文件
C. 同一个备注文件
D. 同一个数据库文件
10. 如果访问Internet时只能使用IP地址,是因为没有配置TCP/IP的?( )
A. IP地址
B. 子网掩码
C. 默认网关
D. DNS
11. 局域网LAN所采用的传输方式为?( )
A. “存储--转发”式
B. 广播式
C. 电路交换式
D. 分散控制式
12. 因特网(Internet)的起源可追溯到它的前身?( )
A. ARPANET
B. DEet
C. NSFNET
D. Ethernet
13. 在声明语句const char *ps;中,ps表示?( )
A. 指向字符串的指针
B. 指向字符串的const型指针
C. 指向const型字符串的指针
D. 指向const型字符串的const型指针
14. 若有语句:int x[]={1,2,3,4,5}; int *ptr; ptr=x; 则以下哪项是对数组元素x[1]的正确引用?( )
A. ptr+1
B. *ptr+1
C. *(ptr+1)
D. *ptr++
15. 在int k=8, *p=&k中,*p的值是?( )
A. 指针变量p的地址值
B. 变量k的地址值
C. 8
D. 无意义
16. 在VFP中,主索引可在( )中建立。
A. 自由表
B. 数据库表
C. 任何表
D. 自由表和视图
17. 打开一个建立了结构复合索引的数据表,表记录的顺序将按( )。
A. 第一个索引标识
B. 最后一个索引标识
C. 主索引标识
D. 原顺序
18. 在Visual FoxPro的参照完整性规则不包括( )。
A. 更新规则
B. 删除规则
C. 查询规则
D. 插入规则
19. 在局域网中,由于距离近以及数字电路器件价格的下降,更具优越性的传输技术是?( )
A. 模拟传输
B. 数字传输
C. 模拟-数字混合传输
D. 以上均不对
20. 从互联网络的结构看,网桥属于DCE级的端到端的连接,从协议层次看,网桥工作于?( )
A. 物理层范畴
B. 链路层范畴
C. 网络层范畴
D. 传输层范畴
21. 在TCP/IP体系结构中,TCP和IP所提供的服务层次分别为?( )
A. 应用层和运输层
B. 运输层和网络层
C. 网络层和链路层
D. 链路层和物理层
22. 设int a=5, b=9, c=15,表达式(a+B./c||(a<B.&&(a%B.的值为?( )
A. 0
B. 2
C. 1
D. -1
23. 若变量c为char类型,能正确判断出c为小写字母的表达式是?( )
A. 'a'<=c<='z'
B. (c>='a')||(c<='z')
C. ('a'<=C.and('z'>=C.
D. (c>='a')&&(c<='z')
24. 以下哪项是不正确的描述?( )
A. while循环先判断表达式,后执行循环体语句
B. do-while循环先执行循环语句,后判断表达式
C. while,do-while 循环效果完全一样,不会出现不一致情况
D. for循环可以用while语句代替
25. 工资表文件已打开,且已设定按基本工资升序的索引为主控索引,并执行过赋值语句NN=900,下面各条命令中,错误的是( )。
A. SEEK NN
B. LOCATE FOR 基本工资==NN
C. FIND 900
D. LOCATE FOR 基本工资=NN
26. 在VFP中,数据库表和自由表的字段名最大字符数分别是( )。
A. 10,10
B. 128,10
C. 256,128
D. 128,128
27. 下列关于索引的叙述中错误的是( )。
A. VFP中的索引类型共有4种,分别是主索引,候选索引,普通索引和唯一索引
B. 在用命令方式建立索引时,可以建立普通索引,唯一索引(UNIQUE)或候选索引(CANDIDATE),但是不能建立主索引
C. 在表设计器的字段选项卡中建立的索引默认为普通索引
D. 在数据库设计器中建立两表之间的永久关系时,只须在父表中建立主索引,然后拖动该索引项到子表中的相应字段上既可
28. 在Internet中,ISP的接入方式有帧中继方式、专线(DDN)方式及?( )
A. ISDN方式
B. 仿真终端方式
C. 局域网连接方式
D. 广域网连接方式
29. 采用100BASE-T物理层媒体规范,其数据速率及每段长度分别为?( )
A. 100Mbps, 200m
B. 100Mbps, 100m
C. 200Mbps, 200m
D. 200Mbps, 100m
30. 网页文件的编写语言及相应的支持协议分别为?( )
A. HTML,HTPT
B. HTTL,HTTP
C. HTML,HTTP
D. 以上均不对
31. 下列关于函数的参数的描述中,错误的是?( )
A. C语言函数的参数可以是多个
B. C语言函数参数可以0个
C. C语言函数的形参可以是指针或引用
D. C语言函数的形参与实参类型要求一致不是必需的。
32. 以下叙述中不正确的是?( )
A. 预处理命令都必须以#号开始
B. 在程序中凡是以#号开始的语句行都是预处理命令行
C. 宏替换不占用运行时间,只占编译时间
D. 在以下定义是正确的:#define PI 3.1415926;
33. 以下哪项能正确定义一维数组?( )
A. int a[5]={0,1,2,3,4,5};
B. char a[]={'0','1','2','3','4','5','\0'};
C. char a={'A','B','C'};
D. int a[5]="0123";
34. 在Visual FoxPro的数据工作期窗口,使用SET RELATION命令可以建立两个表之间的关联,这种关联是( )。
A. 永久性关联
B. 永久性关联或临时性关联
C. 临时性关联
D. 永久性关联和临时性关联
35. 在Visual Foxpro6.0中,打开数据库使用的命令为( )。
A. USE
B. SELECT
C. OPEN
D. CREATE
2、 判断题(共20小题,每小题3分,共60分)
1. 复选框控件可以有两种状态,分别是选中和未选中。( )
2. 在一个关系中任意交换两行的位置不影响数据的实际含义。( )
3. VFP中常量指的是在程序运行过程中不发生变化的量。( )
4. VFP命令格式不区分大小写。( )
5. 同一数组可以存储不同类型的值。( )
6. 若有语句:char *s1="string2";则语句strcpy("china",s1);是正确的。( )
7. C程序总是从main()函数的第一条语句开始执行的。( )
8. 在C程序中,赋值号( = )运算优先级别最低。( )
9. 网上计费查询时,依次输入帐号、主机、查询日期即可查询( )。
10. 泉州信息超市的网址是http:\www.qz.fj.net( )。
11. 在IE中,“搜索”按钮指的是搜索当前正在游览的网页上的内容( )。
12. 201.1.23.108是我们所说的域名( )。
13. VFP的菜单项随着用户的操作可以发生变化。( )
14. 在VFP6.0中,对于任何特定动词的子句和一些关键字,其顺序不能改变。( )
15. 视图可以更新源表中的数据。( )
16. Visual FoxPro6.0是一种关系型数据库管理系统。( )
17. C语言程序的变量必须先定义再使用。( )
18. 如果x>y或者a<b为真,表达式(x>y&&a<b)就为真。( )
19. 运算符/和%要求参加运算的对象均为整型数据。( )
20. 在C语言中,5种基本数据类型的存储空间长度的排列顺序为: char<int<long int <=float<double。( )
3、 填空题(共25题,每题4分,共100分)
1. SQL SELECT语句为了将查询结果存放到临时表中应该使用______短语。
2. 查询设计器的筛选选项卡用来指定查询的______。
3. 网络服务器有文件服务器、异步通信服务器、打印服务器等,其中______是最基本的。
4. 目前常用的网络连接器主要有中继器、网桥、______和网关。
5. 将计算机的输出通过数字信道传输的称为______。
6. 以太网的拓扑结构大多采用总线型,允许电缆的最大长度为50m,传输速率为______。
7. 当a=3,b=2,c=1时,表达式 a>b>c 的值是______。
8. 定义一个指针p,它指向一个有6个整型元素的一维数组,定义语句为______。
9. 定义一个指针数组p,它有4个元素,每个指针指向一个整型数据,定义语句为______。
10. 赋值语句是由______加上一个分号构成。
11. 通过Visual FoxPro的视图,不仅可以查询数据库表,还可以______数据库。
12. 建立远程视图必须首先建立与远程数据库的______。
13. 快捷菜单实质上是一个弹出式菜单。要将某个弹出式菜单作为一个对象的快捷菜单,通常是在对象的______事件代码中添加调用该弹出式菜单程序的命令。
14. 设计报表通常包括两部分内容:______和布局。
15. 以字符特征为代表的IP地址(又称IP名字地址)中包括计算机名、结构名、______和国家名。
16. 调制解调器是实现数字信号和______转换的设备。
17. 在计算机网络中,所谓的资源共享主要是指硬件、软件和______资源。
18. 令牌型网采用的是一种______的介质访问控制协议。
19. 构成数组的各个元素必须具有______的数据类型。
20. 关系表达式 x+y>5 的相反表达式为______。
21. 函数 strlen("1234\0xy") 的值为:______。
22. 函数的形参在未被调用前不分配空间,函数形参的______要和实参相同。
23. 与Internet相连的每台计算机都必须指定一的______地址,称为IP地址。
24. Internet提供的主要服务有______、文件传输GTP、远程登录Telnet、超文本查询WWW等。
25. 目前,局域网的传输介质主要有双绞线、______和光纤。
4、 程序填空题(共12空,每空6分,共72分)
1. 编写一个程序创建一个新表 active_customers,其中只包含活跃客户的信息(即过去一年内下过订单的客户)。请根据提示填空。
CLOSE DATABASES ALL
OPEN DATABASE salesDB
USE customers
USE orders
SELECT c.customer_id, c.customer_name, c.contact_info ;
FROM customers AS c ;
JOIN orders AS o ON c.customer_id = o.customer_id ;
WHERE o.order_date >= ___(1)___ ;
INTO TABLE ___(2)___ ;
___(3)___
提示:
(1) 选择过去一年的订单。
(2) 导出到一个名为 active_customers 的新表。
(3) 确保没有重复的客户信息。
2. 编写一个程序,更新 inventory 表中的产品库存,增加每种产品的数量 10%。请根据提示填空。
CLOSE DATABASES ALL
OPEN DATABASE warehouseDB
USE inventory
SCAN
REPLACE ___(1)___ WITH ___(2)___ * 1.10
ENDSCAN
___(3)___
提示:
(1) 替换库存数量字段。
(2) 原库存数量字段。
(3) 确保数据更改已保存。
3. #include <stdio.h>
void bubbleSort(int arr[], int n) {
int i, j, temp;
for (i = 0; i < n - 1; i++) {
for (j = 0; j < n - i - 1; j++) {
if (arr[j] > arr[j + 1]) {
temp = arr[j];
arr[j] = ___(1)__;
arr[j + 1] = ___(2)___;
}
}
}
}
int main() {
int arr[] = {64, 34, 25, 12, 22, 11, 90};
int n = ___(3)___;
bubbleSort(arr, n);
printf("Sorted array: ");
for (int i = 0; i < n; i++) {
printf("%d ", arr[i]);
}
printf("
");
return 0;
}
4. #include <stdio.h>
int findMax(int arr[], int n) {
int max = arr[0];
for (int i = 1; i < n; i++) {
if (arr[i] > max) {
___(1)___;
}
}
return max;
}
int main() {
int numbers[] = {3, 5, 7, 2, 8, -1, 4, 10, 12};
int size = ___(2)___;
int maxValue = ___(3)___;
printf("Maximum value is %d
", maxValue);
return 0;
}
5、 阅读程序,写出程序运行结果(共4小题,第1题11分,剩余每小题14分,共53分)
1. #include <stdio.h>
void mysteriousFunction(char *str) {
char *ptr = str;
while (*ptr != '\0') {
*ptr = *ptr ^ 0x20;
ptr++;
}
}
int main() {
char input[] = "Hello World!";
mysteriousFunction(input);
printf("%s
", input);
return 0;
}
(1) 在这一段代码中,mysteriousFunction 函数的作用是什么?
(2) 运行这段代码后,输出的结果是什么?
2. #include <stdio.h>
#include <stdlib.h>
typedef struct Node {
int data;
struct Node* next;
} Node;
Node* reverseList(Node* head) {
Node* prev = NULL;
Node* current = head;
Node* next = NULL;
while (current != NULL) {
next = current->next;
current->next = prev;
prev = current;
current = next;
}
return prev;
}
void printList(Node* head) {
Node* temp = head;
while (temp != NULL) {
printf("%d ", temp->data);
temp = temp->next;
}
printf("
");
}
int main() {
Node* head = malloc(sizeof(Node));
head->data = 1;
head->next = malloc(sizeof(Node));
head->next->data = 2;
head->next->next = malloc(sizeof(Node));
head->next->next->data = 3;
head->next->next->next = NULL;
printf("Original List: ");
printList(head);
head = reverseList(head);
printf("Reversed List: ");
printList(head);
return 0;
}
(1) reverseList 函数实现了什么功能?
(2) 运行程序后,输出的结果是什么?
3. CLOSE DATABASES ALL
OPEN DATABASE HR
USE Employees
* 根据部门ID分组,计算每个部门的平均工资
SELECT DepartmentID, AVG(Salary) AS AvgSalary ;
FROM Employees ;
GROUP BY DepartmentID ;
INTO CURSOR DeptAvgSalaries
* 输出所有平均工资大于4000的部门ID
SELECT * FROM DeptAvgSalaries WHERE AvgSalary > 4000 INTO ARRAY HighAvgSalaries
FOR i = 1 TO ALEN(HighAvgSalaries, 1)
? 'Department ID with high average salary: ', HighAvgSalaries[i, 1]
ENDFOR
* 查找工资最高的员工并输出其姓名
SELECT TOP 1 FirstName, LastName, Salary ;
FROM Employees ;
ORDER BY Salary DESC ;
INTO ARRAY TopEarner
IF ALEN(TopEarner, 1) > 0
? 'Top earning employee: ', TopEarner[1, 1], TopEarner[1, 2], ' with salary ', TopEarner[1, 3]
ELSE
? 'No employees found.'
ENDIF
CLOSE ALL
(1) 程序如何计算每个部门的平均工资?
(2) 如何提取并输出平均工资大于4000的部门ID?
(3) 程序如何找到并输出工资最高的员工姓名及其工资?
4. CLOSE DATABASES ALL
OPEN DATABASE Inventory
USE Products
* 增加每种产品售价的5%并更新记录
SCAN
REPLACE Price WITH Price * 1.05
ENDSCAN
* 列出所有库存低于100的产品名称和库存量
SELECT ProductName, Stock ;
FROM Products ;
WHERE Stock < 100 ;
INTO CURSOR LowStockProducts
GO TOP
DO WHILE NOT EOF()
? 'Product with low stock: ', LowStockProducts.ProductName, ' - ', LowStockProducts.Stock
SKIP
ENDDO
* 查找售价最高的产品并输出其名称和售价
SELECT TOP 1 ProductName, Price ;
FROM Products ;
ORDER BY Price DESC ;
INTO ARRAY HighestPricedProduct
IF ALEN(HighestPricedProduct, 1) > 0
? 'Highest priced product: ', HighestPricedProduct[1, 1], ' with price ', HighestPricedProduct[1, 2]
ELSE
? 'No products found.'
ENDIF
CLOSE ALL
(1) 程序如何对产品售价进行调整?
(2) 如何找出并列出所有库存低于100的产品?
(3) 程序是如何查找售价最高的产品并输出其信息的?
原创精品资源学科网独家享有版权,侵权必究!
学科网(北京)股份有限公司
$$