【nowcoder】笔试强训Day17

news2025/1/10 17:21:02

目录

一、选择题

二、编程题

2.1杨辉三角的变形

2.2计算某字符出现次数


一、选择题

1.一个查询语句执行后显示的结果为: 1班 80 2班 75 3班 NULL ,则最有可能的查询语句是()

A.SELECT AVG(成绩) FROM 成绩表 WHERE class<=3

B. SELECT AVG(成绩) FROM 成绩表 WHERE class<=3 GROUP BY class

C. SELECT AVG(成绩) FROM 成绩表 WHERE class<=3 order by class

D. SELECT AVG(成绩) FROM 成绩表 HAVING class <=3 GROUP BY class

能输出null值,并给输出每个班级的平均成绩一定要对班级进行分组GROUP BY class,先判断class<=3需要用到where语句然后再分组,having是分组后的条件判断。

所以正确答案是

2.下列sql语句中哪条语句可为用户zhangsan分配数据库userdb表userinfo的查询和插入数据权限()。

A. grant select,insert on userdb.userinfo to'zhangsan'@'localhost'

B. grant'zhangsan'@'localhost'to select,insert for userdb.userinfo

C. grant select,insert on userdb.userinfo for'zhangsan'@'localhost'

D. grant'zhangsan'@'localhost'to userdb.userinfo on select,insert

用户的权限控制:grant
库,表级的权限控制 : 将某个库中的某个表的控制权赋予某个用户
Grant all ON db_name.table_name TO user_name [ indentified by ‘password’ ];
所以正确答案是 A 

3.下列对于数据库索引的说法一定是错误的()

A. 索引可以提升查询,分组和排序的性能

B.索引不会影响表的更新、插入和删除操作的效率

C. 全表扫描不一定比使用索引的执行效率低

D. 对于只有很少数据值的列,不应该创建索引

当对表中的数据进行增加、删除和修改的时候,索引也要动态的维护,这样就降低了数据的维护速度所以B错误。

所以正确答案是 B 

4.在oracle中,下面哪个SQL命令用来向表中添加列()

A. MODIFY TABLE TableName ADD COLUMN ColumnName

B. MODIFY TABLE TableName ADD ColumnName

C. ALTER TABLE TableName ADD COLUMN ColumnName

D. ALTER TABLE TableName ADD ColumnName Type

modify:修改字段类型和长度,alter:修改表的数据结构,增加列:alter table tableName add columnName varchar (30)

所以正确答案是 C 

5.有订单表orders,包含字段用户信息userid,字段产品信息productid,以下语句能够返回至少被订购过两次的productid?

A. select productid from orders where count(productid)>1

B. select productid from orders where max(productid)>1

C. select productid from orders where having count(productid)>1 group by productid

D.select productid from orders group by productid having count(productid)>1

返回productid:select productid

订单表orders检索:from orders

至少被订购过两次的productid,则需要根据字段产品信息进行分组,如果出现了两次,那么就能输出 group by productid having count(productid)>1

所以正确答案是 D 

6. 在手机开发中常用的数据库是 ___

A. SQLite

B. Oracle

C. Sql Server

D. Db23 

在手机开发中常用的数据库是SQLite

所以正确答案是 A 

7.下列哪个特性与此事相关:已落实的事务会保证所有操作均已完成,并且在事务回滚中,所有操作产生的影响均已得到恢复?

A. 隔离性

B. 原子性

C. 一致性

D. 持久性

原子性:事务是一个不可分割的整体,为了保证事务的总体目标,事务必须具有原子性,即当数据修改时,要么全执行,要么全不执行,即不允许事务部分的完成,避免了只执行这些操作的一部分而带来的错误。原子性要求失误必须被完整执行。

一致性:一个事务执行之前和之后,数据库数据必须要保持一致性状态。数据库的一致性状态应该满足模式锁指定的约束,那么在完整执行该事务后数据库仍然处于一致性的状态。为了维护所有数据的完整性,在关系型数据库中,所有规则必须应用到事务的修改上。数据库的一致性状态由用户来负责,由并发控制机制实现。例如银行转账,转账前后两个账户金额之和应保持不变。由此并发操作带来的数据不一致性包括丢失数据修改、读脏数据。不可重复读、产生‘幽灵’数据。

隔离性:隔离性也被成为独立性,当两个或多个事务并发执行时,为了保证数据的安全性,将一个事物内部的操作与事务的操作隔离起来,不被其他正在执行的事务看到。

持久性:持久性也被成为永久性,事务完成之后,DBMS保证它对数据库中的数据的修改是永久性的,当系统或介质发生故障时,该修改也永久保持。持久性一般通过数据库备份与恢复来保证。

所以正确答案是 B 

8.athletes 表包含运动员姓名,年纪和代表国家。下面哪个查询可以找出代表每个国家最年轻的运动员情况?

A. SELECT name, country, age FROM athletes WHERE (country, age) IN (SELECT country, min(age) FROM athletes GROUP BY country)

B. SELECT name, country, age FROM athletes WHERE (country, age) IN (SELECT min(age), country FROM athletes GROUP BY country)

C. SELECT name, country, age FROM athletes WHERE (country, age) IN (SELECT country, min(age) FROM athletes) GROUP BY country

D. SELECT name, country, age FROM athletes WHERE age IN (SELECT country, min(age) FROM athletes GROUP BY country) 

查询运动员情况SELECT name, country, age

从athletes 表中检索FROM athletes

每个国家最年轻的需要在创建一个检索找到年龄最小的运动员,然后当第一次检索检索到这个年龄则输出 WHERE age IN (SELECT country, min(age) FROM athletes GROUP BY country) 

所以正确答案是 A 

9.执行以下 SQL ,下面哪个名字会被查询出来()

SELECT FirstName FROM StaffList WHERE FirstName LIKE’_A%’

A. Allen

B. CLARK

C. JACKSON

D. David 

LIKE指和后面引用中长相相似的元素,_A%中_代表一个字符%代表一个或者多个字符。所以是A前有一个字符,后面有一个或多个字符。所以是JACKSON。

所以正确答案是 C 

10.MySQL数据库有选课表learn(student_id int,course_id int),字段分别表示学号和课程编号,现在想获取每个学生所选课程的个数信息,请问如下的sql语句正确的是

A. select student_id,sum(course_id)from learn

B. select student_id,count(course_id)from learn group by student_id

C. select student_id,count(course_id)from learn

D. select student_id,sum(course_id)from learn group by student_id

获取每个学生所选课程的个数信息 select student_id,count(course_id)

从选课表中获取from learn

每个学生是需要分组的group by student_id

所以正确答案是 B 

二、编程题

2.1杨辉三角的变形

以上三角形的数阵,第一行只有一个数1,以下每行的每个数,是恰好是它上面的数、左上角数和右上角的数,3个数之和(如果不存在某个数,认为该数就是0)。 求第n行第一个偶数出现的位置。如果没有偶数,则输出-1。例如输入3,则输出2,输入4则输出3,输入2则输出-1。 数据范围: 1 \le n \le 10^9 \1≤n≤10 9

 根据如上图中我们能发现其中规律,当n==1||n==2是没有偶数的,所以这个条件则直接输出-1,当n-1是2的倍数是,第二个位置一定是偶数,直接输出2,所以n能整除4,则第三个位置一定是偶数输出3,。如果n不能那个整除4,也不满足之前的条件那么第四个位置是偶数,直接输出4。

public class Main {
    public static void main(String[] args) {
        Scanner sc = new Scanner(System.in);
        int n = sc.nextInt();
        if (n == 1 || n == 2) {
            System.out.println(-1);
        } else if ((n - 1) % 2 == 0) {
            System.out.println(2);
        } else if (n % 4 == 0) {
            System.out.println(3);
        } else if (n % 4 != 0) {
            System.out.println(4);
        }
    }
}

2.2计算某字符出现次数

写出一个程序,接受一个由字母、数字和空格组成的字符串,和一个字符,然后输出输入字符串中该字符的出现次数。(不区分大小写字母) 数据范围: 1 \le n \le 1000 \1≤n≤1000

 首先取得两个字符串之后,对每个字符串都变成小写,然后存储第二个字符串的唯一字符。然后遍历第一个字符串,如果相等则count++,最后遍历完成后输出count的值即可。

public class Main {
        public static void main(String[] args) {
        Scanner sc = new Scanner(System.in);
        String str = sc.nextLine();
        String s = sc.nextLine();
        s = s.toUpperCase();
        str = str.toUpperCase();
        char c = s.charAt(0);
        int count = 0;
        for (int i = 0; i < str.length(); i++) {
            char c1 = str.charAt(i);
            if(c1==c){
                count++;
            }
        }
        System.out.println(count);
    }
}

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

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

相关文章

WindowManager

1 Window、WindowManager 和 WMS Window 是一个抽象类&#xff0c;具体的实现类为 PhoneWindow&#xff0c;它对 View 进行管理。WindowManager 是一个接口类&#xff0c;继承自接口ViewManager&#xff0c;它是用来管理 Window 的&#xff0c;它的实现类为 WindowManagerImpl…

[Leetcode] 二叉树的深度、平衡二叉树

题目链接&#xff1a;二叉树的最大深度 https://leetcode.cn/problems/maximum-depth-of-binary-tree/submissions/二叉树的最小深度 https://leetcode.cn/problems/minimum-depth-of-binary-tree/平衡二叉树 https://leetcode.cn/problems/balanced-binary-tree1.二叉树的最大…

微信小程序实现上下左右滑动触发联动选项卡、绝对值、事件、parse、stringify、Math、atan、abs、findIndex

文章目录序言1、HTML部分2、JavaScript部分&#xff08;上下左右滑动均触发&#xff09;3、JavaScript部分&#xff08;左右滑动触发&#xff09;4、效果演示序言 最近在写原生微信小程序项目的时候遇到了左右滑动内容更新数据&#xff0c;同时改变tabBar的高亮效果。于是就写了…

B. Camp Schedule(KMPnext数组)

Problem - 1137B - Codeforces 在全国范围内广为人知的春季编程训练营即将开始。因此&#xff0c;所有友好的策展人和教师团队开始组成营地的时间表。经过不断的讨论&#xff0c;他们想出了一个时间表&#xff0c;可以表示为一个二进制字符串&#xff0c;其中第i个符号是 "…

前后端的身份认证

1、Web 开发模式 目前主流的 Web 开发模式有两种&#xff0c;分别是&#xff1a; 基于服务端渲染的传统 Web 开发模式基于前后端分离的新型 Web 开发模式 1.1、服务端渲染的 Web 开发模式 服务端渲染的概念&#xff1a;服务器发送给客户端的 HTML 页面&#xff0c;是在服务器…

【Linux】进程间通信(万字详解) —— 下篇

&#x1f387;Linux&#xff1a; 博客主页&#xff1a;一起去看日落吗分享博主的在Linux中学习到的知识和遇到的问题博主的能力有限&#xff0c;出现错误希望大家不吝赐教分享给大家一句我很喜欢的话&#xff1a; 看似不起波澜的日复一日&#xff0c;一定会在某一天让你看见坚持…

我的周刊(第073期)

我的信息周刊&#xff0c;记录这周我看到的有价值的信息&#xff0c;主要针对计算机领域&#xff0c;内容主题极大程度被我个人喜好主导。这个项目核心目的在于记录让自己有印象的信息做一个留存以及共享。&#x1f3af; 项目zlib-searcher[1]zlib 开源搜索方案&#xff08;zli…

基于朴素贝叶斯算法的激光雷达点云分类

前言激光雷达技术是一种采集三维数据的、重建三维模型的手段&#xff0c;运用在各个行业&#xff0c;随着激光雷达技术的发展与广泛运用本文采用监督分类中的朴素贝叶斯算法进行地基于激光雷达的地物分类。首先根据点云的几何位置建立邻域范围&#xff0c;借助邻域点的集合计算…

分享98个PHP源码,总有一款适合您

PHP源码 分享98个PHP源码&#xff0c;总有一款适合您 PHP源码下载链接&#xff1a;https://pan.baidu.com/s/1ZNcdj0bLY51UXNoXq8tgFg?pwdwn4b 提取码&#xff1a;wn4b 下面是文件的名字&#xff0c;我放了一些图片&#xff0c;文章里不是所有的图主要是放不下...&#xff0…

ORB-SLAM2 --- LoopClosing::ComputeSim3 函数

目录 1.什么是sim3&#xff0c;为什么要做sim3 2.函数流程 3.code 4.函数解析 4.1 准备工作 4.2 遍历闭环候选帧集&#xff0c;初步筛选出与当前关键帧的匹配特征点数大于20的候选帧集合&#xff0c;并为每一个候选帧构造一个Sim3Solver 4.3 对每一个候选帧用Sim3Sol…

实例分析Linux内存泄漏检测方法

一、mtrace分析内存泄露 mtrace&#xff08;memory trace&#xff09;&#xff0c;是 GNU Glibc 自带的内存问题检测工具&#xff0c;它可以用来协助定位内存泄露问题。它的实现源码在glibc源码的malloc目录下&#xff0c;其基本设计原理为设计一个函数 void mtrace ()&#x…

解决Tinkphp的success跳转“使用路由别名后模块和路由器访问不了”问题

遇到的问题&#xff1a;我的thinkphp5网站添加了以下路由别名&#xff1a;Route::alias([ index>index/index, ]);使用http://域名/Index/user/password.html访问正常但使用http://域名/index/user/password.html就访问失败使用$this->success(修改密码成功);进行提示跳转…

Java 链表与LinkedList

链表的组合形式 ①有头结点、无头结点 ②单向链表、双向链表 ③循环链表、非循环链表 根据自由组合&#xff0c;可以得到8种不同形式的链表&#xff0c;那么在刷题种常碰到的是不带有头结点的单向非循环链表和不带头结点的双向非循环链表。 模拟实现不带头结点的单向非循环链表…

Notes可以手动签名了

大家好&#xff0c;才是真的好。 Notes/Domino 12.0.2陆续有人下载测试了&#xff0c;关于Notes的新功能中&#xff0c;我们上一篇也介绍到了可以手动签名。 字面上的意思&#xff0c;就是你可以调出手写板&#xff0c;然后使用触屏或鼠标来进行签名&#xff0c;可以在Nomad …

javaEE 初阶 — 定时器

文章目录定时器1 什么是定时器2 标准库中定时器3 实现一个定时器3.1 实现的思路3.2 为什么要使用优先级队列来保存任务3.3 开始实现定时器 1 什么是定时器 定时器 类似于一个 “闹钟”&#xff0c;达到一个设定的时间之后&#xff0c;就执行某个指定好的代码。 定时器是一种实…

印染行业APS智能排程排产的应用意义

不得不说的印染之“痛” 在印染行业&#xff0c;因排产无法自动化、智能化&#xff0c;企业在交期、成本、生产管理方面承受着巨大的压力&#xff0c;尤其当下印染企业生产管理正从传统的粗放式转向精细化&#xff0c;这些痛点愈加凸显。 一方面&#xff0c;客户和企业面临一个…

httpd安装

一、离线安装 1、去 https://pkgs.org/ 下载httpd所依赖的7个rpm包 [基于CentOS 7 x86_64系统&#xff0c;如需其他环境可前往官网直接下载] apr-1.4.8-5.el7.x86_64.rpm apr-util-1.5.2-6.el7.x86_64.rpm apr-util-ldap-1.5.2-6.el7.x86_64.rpm postgresql-libs-9.2.24-1.el…

互联互通-标准化成熟度指标分析(未完成)

整体分析1 医疗机构基本情况2 数据资源标准化建设情况&#xff08;30 分&#xff09;2.1数据集标准化情况&#xff08;15 分&#xff09;2.1.1电子病历基本数据集 第1部分&#xff1a;病历概要&#xff08;1-4数据集&#xff09;2.1.2电子病历基本数据集 第2部分&#xff1a;门…

Jetpack Compose UI创建布局绘制流程+原理 —— 内含概念详解(手撕源码)

本文是我去年首发于稀土掘金平台的文章 全文较长&#xff1a;共1万5千字&#xff0c;适合有耐心❤️的人学习 有些概念不懂的可以去4.部分概念详解这个目录先稍微学习一下 Compose源码基于最新的Compose 版本&#xff1a;1.0.1 系统源码基于最新的Android11 版本 注意&#xff…

【蓝桥杯基础题】2020年省赛填空题—回文日期

&#x1f451;专栏内容&#xff1a;蓝桥杯刷题⛪个人主页&#xff1a;子夜的星的主页&#x1f495;座右铭&#xff1a;前路未远&#xff0c;步履不停 目录一、题目背景二、题目描述1.问题描述2.输入格式3.输出格式4.一个例子5. 评测用例规模与约定三、题目分析1.获取位数2.回文…