【nowcoder】笔试强训Day13

news2024/12/23 7:28:31

目录

一、选择题

二、编程题

2.1参数解析

2.2跳石板


一、选择题

1.一个关系数据库文件中的各条记录 () 。

A. 前后顺序不能任意颠倒,一定要按照输入的顺序排列

B. 前后顺序可以任意颠倒,不影响库中的数据关系

C. 前后顺序可以任意颠倒,但排列顺序不同,统计处理的结果就可能不同

D. 前后顺序不能任意颠倒,一定要按照关键字字段值的顺序排列 

一个关系数据库文件中的各条记录前后顺序可以任意颠倒,不影响库中的数据关系。

所以正确答案是 B 

2.一名员工可以使用多台计算机,每台计算机只能由一名员工使用,则实体员工和计算机间的联系是( )

A. 一对多

B. 多对多

C. 多对一

D. 一对一 

一台员工可以对应多台计算机,一台计算机只能对应一个员工,所以员工对计算机是一对多。

所以正确答案是

3.下列关于视图的说法错误的是:

A. 视图是从一个或多个基本表导出的表,它是虚表

B. 视图一经定义就可以和基本表一样被查询、删除和更新

C. 某一用户可以定义若干个视图

D. 视图可以用来定义新的视图

视图是从一个或多个基本表导出的表,它是虚表。视图一经定义就不能修改。一个用户可以定义若干个视图。视图可以用来定义新的视图

所以正确答案是

4.在Mysql中,订单表 ( 订单号,雇员代号,地区代号,订购日期 ) 中订单号为主键,要删除订单中前三年以前的信息, SQL 为:

A. delete from 订单表 where 订购日期<getdate()+3

B. delete from 订单表 where 订购日期<DATEADD(yy,3,getdate())

C.delete from 订单表 where 订购日期<getdate()-3

D. delete from 订单表 where 订购日期<DATEADD(yy,-3,getdate())

DATEADD() 函数在日期中添加或减去指定的时间间隔。

DATEADD(datepart,number,date)

datapart参数的取值范围{yy/yyyy,qq/q,mm/m,dy/y,dd/d,wk/ww,dw/w,hh,mi/n,ss/s,ms,mcs,ns}

number 是您希望添加的间隔数,date 参数是合法的日期表达式。

所以where 订购日期<查找前三年的信息就是DATEADD(yy,-3,getdate())

所以正确答案是

5.负责数据库中查询操作的数据库语言是( )。

A. 数据定义语言

B. 数据管理语言

C. 数据操纵语言

D. 数据控制语言 

数据库语言包括:
1、数据定义语言(DDL)及其翻译程序,主要负责数据的模式定义与数据的物理存取构建;
2、数据操纵语言(DML)及其编译(或解释)程序,主要负责数据的基本操作,包括查询、增加、删除、修改等操作;
3、数据控制语言,主要负责解释每个控制命令的含义,决定如何去执行控制命令负责数据库

所以正确答案是 C 

6.数据库管理系统是( )。

A. 操作系统的一部分

B. 在操作系统支持下的系统软件

C. 一种编译系统

D. 一种操作系统

数据库管理系统是在操作系统支持下的系统软件。

所以正确答案是 B 

7.关系的键与完整性 SQL 语句中修改表结构的命令是()

A. MODIFY TABLE

B. MODIFY STRUCTURE

C. ALTER TABLE

D. ALTER STRUCTURE

modify 是vfp的命令,alter是 sql的命令。

ALTER TABLE是关系的键与完整性 SQL 语句中修改表结构的命令。

所以正确答案是 C 

8.在sql数据库中,哪个语句能校验整数列 i 的值不小于 1 不大于 10 ?

A. i BETWEEN 1 AND 10 

B. i BETWEEN 0 AND 11

C. i IN INTERVAL(0,11)

D. i IN INTERVAL(1,10)

i BETWEEN 1 AND 10 意味着 i 的值不小于 1 不大于 10。

interval(n,n1,n2)是比较函数,返回比n大的位置。

所以正确答案是 A 

9.在学生表 Student 的系别 (Sdept) 属性中查询信息系 (IS) 、数学系 (MA) 和计算机系 (CS) 的学生姓名 (Sname) 和性别 (Ssex) ,正确的命名格式应为:

A. SELECT Student FROM Sname, Ssex WHERE Sdept IN (‘IS’, ’MA’, ‘CS’)

B.SELECT Sname, Ssex FROM Student WHERE Sdept IN (‘IS’, ’MA’, ‘CS’)

C. SELECT Sname, Ssex FROM Student WHERE Sdept (IS, MA, CS)

D. SELECT Sname, Ssex FROM Student WHERE Sdept LIKE IS, MA, CS  

查询学生姓名 (Sname) 和性别 (Ssex) 是SELECT Sname, Ssex

从学生表中查询是 FROM Student

条件是信息系 (IS) 、数学系 (MA) 和计算机系 (CS)三个系的学生: WHERE Sdept IN (‘IS’, ’MA’, ‘CS’)

所以正确答案是 B 

10.SQL运用 SQL 查询语句中 WHERE 、 GROUP BY 、 HAVING 这些关键字区别和用法总结错误的是()

A. HAVING在查询语句中必须依赖于GROUP BY

B. WHERE子句用来限制SELECT语句从表中指定选取的行

C. GROUP BY子句用来分组WHERE子句的输出结果集

D.HAVING子句用来从分组的结果中筛选列

HAVING在查询语句中必须依赖于GROUP BY ,是在分组的基础上删选行。WHERE子句用来限制SELECT语句从表中指定选取的行。GROUP BY子句用来分组WHERE子句的输出结果集。

所以正确答案是 D 

二、编程题

2.1参数解析

在命令行输入如下命令: xcopy /s c:\\ d:\\e, 各个参数如下: 参数1:命令字xcopy 参数2:字符串/s 参数3:字符串c:\\ 参数4: 字符串d:\\e 请编写一个参数解析程序,实现将命令行各个参数解析出来。

 本题中需要创建两个循环,第一个循环是用来求一共有几个参数,首先判断是否是",如果是久在进入do-while循环,直到遇到下一个"跳出循环然后再判断是否是空格,如果是count++,输出的时候要记得第一个参数没有计算到count还要+1。

第二个循环用于输出每个参数,还是需要"就进入dowhile循环,不同的是要在这之前先i++,否则会输出",遇到下一个"就换行并且i++,然后else if判断是否是空格,空格则换行,不是空格则直接输出。

public class Main {
    public static void main(String[] args) {
        Scanner sc = new Scanner(System.in);
        String str = sc.nextLine();
        int count = 0;
        for (int i = 0; i < str.length(); i++) {
            char c = str.charAt(i);
            if (c == '"') {
                do {
                    i++;
                    c = str.charAt(i);
                } while (c != '"');
            } 
            if (c == ' ') {
                count++;
            }
        }
        System.out.println(count+1);
        for(int i = 0;i<str.length();i++){
            char c = str.charAt(i);
            if (c == '"') {
                i++;
                c = str.charAt(i);
                while (c != '"'){
                    System.out.print(c);
                    i++;
                    c = str.charAt(i);
                }
                System.out.println();
                i++;
            }else if (c == ' ') {
                System.out.println();
            }else {
                System.out.print(c);
            }
        }
    }
}

2.2跳石板

小易来到了一条石板路前,每块石板上从1挨着编号为:1、2、3....... 这条石板路要根据特殊的规则才能前进:对于小易当前所在的编号为K的 石板,小易单次只能往前跳K的一个约数(不含1和K)步,即跳到K+X(X为K的一个非1和本身的约数)的位置。 小易当前处在编号为N的石板,他想跳到编号恰好为M的石板去,小易想知道最少需要跳跃几次可以到达。

 

求得当前石板数的约数,不断更新跳到下一个石板的步数最小值

step[i+j]表示跳到下一个石板的步数,与他本身和上一个石板步数+1 作比较,求最小
 step[i + j] = step[i] + 1;如果step[i+j] == Integer.MAX_VALUE,说明他本身没有步数,直接+1。

最终得出跳到目标石板的最小值。

public class Main {
    public static void main(String[] args) {
        Scanner sc = new Scanner(System.in);
        int n = sc.nextInt();
        int m = sc.nextInt();
        int[] step = new int[m+1];
        for (int i = 0; i < m+1; i++) {
            step[i] = Integer.MAX_VALUE;
        }
        step[n] = 0;
        for (int i = n; i < m; i++) {
            if(step[i]==Integer.MAX_VALUE){
                continue;
            }
            List<Integer> list = div(i);
            for (int j : list) {
                if(i+j<=m&&step[i+j]!=Integer.MAX_VALUE){
                    step[i+j] = Math.min(step[i+j],step[i]+1);
                }else if(i+j<=m){
                    step[i+j] = step[i]+1;
                }
            }
        }
        if(step[m] == Integer.MAX_VALUE){
            System.out.println(-1);
        }else{
            System.out.println(step[m]);
        }
    }

    private static List<Integer> div(int num) {
        List<Integer> list = new ArrayList<>();
        for (int i = 2; i*i <= num; i++) {
            if(num%i==0){
                list.add(i);
                if(num/i!=i){
                    list.add(num/i);
                }
            }
        }
        return list;
    }
}

 

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/126956.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

前端面试题之计算机网络篇--HTTP协议

HTTP协议 1. GET和POST的请求的区别 GET和POST方法 GET和POST方法都是HTTP中的方法 什么是 HTTP&#xff1f; 超文本传输协议&#xff08;Hypertext Transfer Protocol&#xff0c;缩写 HTTP&#xff09;旨在启用客户端和服务器之间的通信。 HTTP 充当客户端和服务器之间的…

Android进阶——Javac编译解析

Javac编译器 1.Javac的源码与调试 Javac的源码下载地址&#xff1a;Javac的源码下载地址&#xff0c;在Myeclipse中新建项目Compiler_javac&#xff0c;把源码复制到项目中。 Javac的源码目录&#xff1a; 从Sun Javac的代码来看&#xff0c;编译过程大致可以分为3个过程&…

测试工程师正遭「革命」 AI将改写测试模式

文章目录❤️‍&#x1f525; 软件测试的现状❣️ 功能测试的短板❣️ 过于的依赖工具❤️‍&#x1f525; 测试行业的两极分化❤️‍&#x1f525; 纯功能测试人员应该如何破局❣️ 龙测 AI TestOps 云平台❣️ AI TestOps 亮相 TICA❣️ AI TestOps 所实现的混合模型解决方案…

相关系数(皮尔逊pearson相关系数和斯皮尔曼spearman等级相关系数)

目录 总体皮尔逊Person相关系数&#xff1a; 样本皮尔逊Person相关系数&#xff1a; 两点总结&#xff1a; 假设检验&#xff1a;&#xff08;可结合概率论课本假设检验部分&#xff09; 皮尔逊相关系数假设检验&#xff1a; 更好的方法&#xff1a;p值判断方法 皮尔逊相…

lua调用c动态库实例

简介 Lua 是一种轻量小巧的脚本语言&#xff0c;用标准C语言编写并以源代码形式开放&#xff0c; 其设计目的是为了嵌入应用程序中&#xff0c;从而为应用程序提供灵活的扩展和定制功能。 特点 轻量级: 它用标准C语言编写并以源代码形式开放&#xff0c;编译后仅仅一百余K&a…

STM32/51单片机实训day4——RFID数据读取|RC522|串口数据收发、可模拟RFID (三) 仿真

目录 1 任务指导 2 实验步骤 3 串口调试 4 USART配置 5 fputs函数重写 内 容&#xff1a;能够读取RFID卡S50的ID——编程实现串口数据收发 学 时&#xff1a;3学时 知识点&#xff1a;电路图设计、USART配置 重点&#xff1a; USART配置 难点&#xff1a;USART配置 时…

赶快升级吧!PHP8比PHP5快41倍,比PHP7快3倍

本文得出的结论&#xff0c;归结于仅运行纯CPU任务的脚本的基准测试结果&#xff0c;不需要I/O操作的任务&#xff0c;例如访问文件、网络或数据库连接。 这些是纯 CPU 基准测试。它们并未涵盖 PHP 性能的所有方面&#xff0c;并且它们可能无法代表实际情况。然而&#xff0c;结…

用Python标准库统计CSDN阅读量

urllib基础 一般做爬虫其实很少有推荐urllib的&#xff0c;但urllib乃是Python标准库成员&#xff0c;在要求比较简单的情况下&#xff0c;采用urllib还是比较方便的。 作为爬虫入门必学包&#xff0c;urllib最常用的函数一定是urllib.request中的urlopen。其返回对象是HTTPR…

ES学习路程(二)

关于ES第一篇是在Linux安装&#xff0c;为了方便我在windows搭建一套ES和kibana版本&#xff08;7.15.0&#xff09; 第一步&#xff1a;下载安装ES在windows 官网下载相应版本的es和kibana&#xff1a; https://www.elastic.co/cn/downloads/past-releases/elasticsearch-7…

《图解TCP/IP》阅读笔记(第八章 8.6、8.7)—— 网络管理与其他应用层协议

前言 本篇是第八章的最后一篇 8.6 网络管理 从前&#xff0c;网络管理凭借管理员的记忆和直觉进行&#xff0c;但是网络规模越大&#xff0c;人的力量就越不足&#xff0c;所以需要一个严密的管理工具或方法。 在TCP/IP的网络管理中&#xff0c;可以使用SNMP&#xff08;Si…

uni-app——小程序实现本地图片的上传以及身份证的智能识别

文章目录 前言一、示例图二、实现过程 1.完成提交图片的api地址2.获取本地图片3.将本地图片上传至开发者服务器三、具体实现代码四、身份证的智能识别总结前言 上传本地图片的功能很常见&#xff0c;那么具体该如何实现呢&#xff1f; 一、示例图 二、实现过程 1.完成提交图…

操作系统接口系统调用的实现

接口 连接两个东西&#xff0c;信号转换&#xff0c;屏蔽细节… 操作系统接口 连接上层用户和操作系统软件&#xff0c;方便了使用&#xff0c;屏蔽了细节。 操作系统接口的形式 为应用层提供一些重要的函数&#xff0c;如printf&#xff0c;write&#xff0c;read等。接口…

Windows Active Directory —— 常见的远程控制对比

在windows环境中,需要远程访问的时候很多,使用的工具和命令也各式各样,我把自己常用的命令和工具总结一下 远程访问方式: 1)对服务器而言,RDP这个绝对是最常见的方式,mstsc /v:remoteserver 即可打开 2)winrs和winrm,这个可以允许我们通过命令行来远程访问,远程服务…

TypeScript基础类型

目录 数字 number 字符串 string 布尔 boolean 数组 Array 元组 枚举 enum 任意值 any void Null 和 Undefined null undefined Never 数字 number let age: number 24; 虽然爆红&#xff0c;但是依然能改 字符串 string let name:string"张三" 布尔 bo…

ef参数设置说明(faiss)

1、模型参数&#xff1a;1000代表聚类中心个数 随着聚类个数的增加&#xff0c;模型索引的构建时间近似指数增加但搜索精度也线性增加&#xff0c;不影响内存占用&#xff0c;几乎不影响搜索耗时 结论&#xff1a;在 Faiss 引擎的聚类情况下&#xff0c;对于百万级别的数据大概…

B/S结构和C/S结构详细介绍

什么是c/s结构、b/s结构 1、C/S结构&#xff0c;即Client/Server(客户机/服务器)结构&#xff0c;是大家熟知的软件系统体系结构&#xff0c;通过将任务合理分配到Client端和Server端&#xff0c;降低了系统的通讯开销&#xff0c;充分利用两端硬件环境的优势。早期的软件系统…

Haploview做单倍型教程1--软件安装

大家好&#xff0c;我是邓飞&#xff0c;这里介绍一下如何使用Haploview进行单倍型的分析。 计划分为三篇文章&#xff1a; 第一篇&#xff1a;Haploview做单倍型教程1–软件安装第二篇&#xff1a;Haploview做单倍型教程2-分析教程第三篇&#xff1a;Haploview做单倍型教程3…

HCIA(1)

一. 计算机网络的诞生及发展 1946年2.14日&#xff0c;美国宾夕法尼亚大学为了美国军方用于导弹计算&#xff0c;发明了世界上第一台计算机&#xff0c;而计算机改变并且引领了世界的发展。 计算机是现代一种用于高速计算的电子计算机器&#xff0c;可以进行数值计算&#x…

『C语言』字符串的输入gets()和输出puts()

&#x1f6a9;write in front&#x1f6a9; &#x1f50e;大家好&#xff0c;我是謓泽&#xff0c;希望你看完之后&#xff0c;能对你有所帮助&#xff0c;不足请指正&#xff01;共同学习交流&#x1f50e; &#x1f3c5;2021年度博客之星物联网与嵌入式开发TOP5&#xff5…

MATLAB-fplot绘图函数

前面介绍的plot函数是将外部输人或者通过函数数值计算得到的数据矩阵转化为二维图形。在实际的应用中&#xff0c;用户可能并不知道所要绘制的二维图形中函数随着变量变化的趋势,假如此时用plot函数来绘制图形&#xff0c;则可能会由于变量的取值间隔不合理而导致所绘制的二维图…