SQL题:给你如下表:让你查询出没有选小易老师课程的所有学生CREATE TABLE `S` ( `SNO` varchar(100) COLLATE utf8mb4_bin DEFAULT '' COMMENT '学号', `SNAME` varchar(255) COLLATE utf8mb4_bin DEFAULT NULL COMMENT '姓名') ENGINE=InnoDB AUTO_INCREMENT=146 DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_bin ROW_FORMAT=DYNAMIC COMMENT='学生关系';CREATE TABLE `C` ( `CNO` varchar(100) COLLATE utf8mb4_bin DEFAULT '' COMMENT '课程号', `CNAME` varchar(255) COLLATE utf8mb4_bin DEFAULT NULL COMMENT '课程名', `CTEACHER` varchar(255) COLLATE utf8mb4_bin DEFAULT NULL COMMENT '老师') ENGINE=InnoDB AUTO_INCREMENT=146 DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_bin ROW_FORMAT=DYNAMIC COMMENT='课程关系';CREATE TABLE `SC` ( `SNO` varchar(100) COLLATE utf8mb4_bin DEFAULT '' COMMENT '学号', `CNO` varchar(100) COLLATE utf8mb4_bin DEFAULT '' COMMENT '课程号', `SCORE` bigint(100) NOT NULL DEFAULT '0' COMMENT '成绩') ENGINE=InnoDB AUTO_INCREMENT=146 DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_bin ROW_FORMAT=DYNAMIC COMMENT='选课关系';INSERT INTO `SC` (`SNO`, `CNO`, `SCORE`) VALUES ( '2', '11', 120);INSERT INTO `S` (`SNO`, `SNAME`) VALUES ('2', '小易');INSERT INTO `C` (`CNO`, `CNAME`, `CTEACHER`) VALUES ('11', '小易', '物理老师');Java题:给你一个字符串让你将他反转并转成大写,但“ali”这个单词不做反转。例如:"welcome to alibaba!" -> "!ABABali OT EMOCLEW""ali all in, Ali ilA" -> "ALI ILA ,NI LLA ali""keep ali" -> "ali PEEK"题解:SQL题:两个子查询即可:select SNAME from S where SNO not in( select SNO FROM SC where CNO in( select CNO from C where CTEACHER = '小易' ) );Java题:import java.util.Scanner;public class Main { /** * 思路:先将所有的ali替换成特殊字符。然后正常反转,反转后将ali替换回来 * @param args */ public static void main(String[] args) { Scanner sc = new Scanner(System.in); // 注意 hasNext 和 hasNextLine 的区别 while (sc.hasNextLine()) { // 注意 while 处理多个 case String line = sc.nextLine(); String newLine = invoke(line); System.out.println(line+" -> "+newLine); } } static String old = "@"; public static String invoke(String str) { String newStr = str.replaceAll("ali", old); char[] chars = newStr.toCharArray(); char[] newchars = new char[chars.length]; for (int i = chars.length - 1, j = 0; i >= 0; i--, j++) { if (chars[i] >= 'a' && chars[i] <= 'z') { chars[i] -= 32; } newchars[j] = chars[i]; } String s = new String(newchars); return s.replaceAll(old, "ali"); }}