《C#程序设计教程》总复习
一、单项选择题
1.short 类型的变量在内存中占据的位数是 ( )。
A. 8
B. 16
C. 32
D. 64
2.对千 int[ 4,5]型的数组 a, 数组元素 a[2,3] 存在数组第 ( )个位置上。
A. 11
B. 12
C. 14
D. 15
3.设 int 类型变量 x,y,z 的值分别是2、3、6 , 那么执行完语句(z=y=x=z) 后他们的值为 ( )。
A. 2,3,6
B. 2,2,2
C. 6,6,6
D. 3,3,3
4.以下说法中不正确的是 ( )。
A.构造函数和析构函数都不能有返回值
B.构造函数可以是静态的
C. 一个类只能有一个构造函数
D.一个类只能有一个析构函数
5.以下不属千object 类型的成员方法是 ( )。
A.ToString() B.Dispose() C.Equals() .GetType()
6.语句ReadLine()方法用来从控制台的键盘上,读取( ),直到用户按下Enter键它才会放回。
A.一行字符 B.一个字符
7.下面代码:
X=2;
Y=X++;
Console.Write (X);
Console.Write (Y);
完成后,最后值为:
A.32 B.33 C.23 D.22
8.下列能够被创建对象的是 ( )。
A.接口
B.抽象类
C.委托
D.只有私有构造函数的类
9. 关千接口和抽象类,下列说法中正确的是 ( )。
A.接口不能创建对象,而抽象类可以
B.接口不能包含字段, 而抽象类可以
C.抽象类中的方法必须是抽象方法
D.接口中的方法也可以有实现代码
10.关于 finally 代码段,下列是说法正确的是 ( )。
A.仅在程序正常时执行
B.仅在程序发生异常时执行
C.在程序发生异常时会被跳过
D.无论程序是否发生异常都会被执行
11.C#中的值类型分为三种:
A.简单类型、结构类型和枚举类型 B.整数、小数、布尔类型 C.结构类型、枚举类型、类类型
12.C#语言是一种类型安全的、现代的、简单的,由C和C++衍生处理的的( )的编程语言。
A.面向接口 B.面向过程 C.面向对象 D.面向剖面
13. C#语言是由美国的哪一个公司发明的?
A.谷歌 B.微软 C.IBM D.Oracle
14.WriteLine()的方法的作用是:
A.从键盘上接收一个字符
B.从键盘上接收一行信息
C.将信息输出到键盘上
D.将信息输出到屏幕上,并自动换行
15.语句Console.WriteLine(“{0:n2}”,12.345) 输出结果是: [单选题] *
A.12.345
B.12.3
C.12.35
D.12.34
16.整数7除以3,商为2,余数为1,下面说法正确的是: *
A.用/取商,用%取余
B.用\取商,用%取余
C.用%取商,用/取余
17.while 语句循环结构和do...while语句循环结构的区别在于:
A.while语句的执行效率较高
B.do...while的语句编程程序较复杂
C.无论条件是否成功,do...while语句至少执行一次循环体
D.do...while循环是先执行循环体,后判断条件表达式是否成立,而while语句是先判断条件表达式,再决定是否执行循环体,两者的实际执行效果是一样的
18. 关于break和continue和goto语句描述正确的:
A.continue语句用于终止并退出当前循环
B.使用break语句只可以跳出外围最近的一层循环
C.使用goto语句可以方便地跳出多重循环,因而编程时尽可能多地使用goto语句
二、填空题
1.一般将类的构造方法声明为( 公有 public )访问权限。如果声明为 private, 就不能创建该类
的对象。
2.在方法定义中, virtual 含义:(虚方法 )。
3.C#数组元素的下标从( 0 )开始。
4.元素类型为 double 的 2 行 5 列的二维数组共占用(80)字节的存储空间。
5.对于方法,参数传递分为值传递和(引用传递)两种。
6.传入某个属性的 SET 方法的隐含参数的名称是(value)。
7.能用 foreach 遍历访问的对象需要实现( IEnumerable) 接口。
8.委托声明的关键字是 ( delegate )。
9.C#的类不支持多重继承, 但可以用( 接口 Interface)来实现。
10.C#中所有的类型实质上都是从( object )类派生而来的。
三、判断题(正确打√, 错误打 X )
1.不能指定接口中方法的修饰符。 ( √ )
2.DotNet 包含两个部分,即公共语言运行时和框架类库。 ( X )
3.在同一行上可以书写多条语句,每条语句间用分号分隔。 (√ )
4.在数据类型转化时,只能通过类型转换关键字或 Convert 类实现。 ( X )
5.在定义数组时不允许为数组中的元素赋值。 ( X )
6.定义枚举时至少为其中的一个枚举成员赋值。 ( X )
7.通过类的继承,保证对象品种的传承;通过接口继承,保证对象技能的增强。 (√ )
8.委托是将方法作为参数传递给另一方法的一种数据类型,事件与委托没有关系。 ( X )
9.如果要实现重写,在基类的方法中必须使用 virtual 关键字,在派生类的方法中必须使用
override关键字。 ( √ )
10.在 C#类中, this 代表了当前类本身。 ( X )
四、读代码回答问题
1.现实生活当中的插头(Plug)与插座(Socket),国家为其建立了国家标准;厂家生产的插头和插座要和国家标准匹配;生产厂家虽然有很多,但都要符合国家标准。厂家的具体工艺及实现方法,可以有所不同。插头与插座也许分属不同品牌,但可以共同作用,可完成插头与插座的连接匹配及电流传导相关测试。
using System;namespace InterfaceInOutDemo
{interface ISocket{void JoinPlug(IPlug plug);}interface IPlug{int EQuantity { get; set; } }public class Socket:ISocket{void ISocket.JoinPlug(IPlug plug){Console.WriteLine("插座接收到插头的电流:"+plug.EQuantity);}}public class Plug : IPlug{private int eQuantity;int IPlug.EQuantity{ get{return eQuantity;}set{eQuantity = value;Console.WriteLine("插头向插座输出电流:" + eQuantity);}} }class Program{static void Main(string[] args){Plug pg = new Plug();Socket sk = new Socket(); ((IPlug)pg).EQuantity = 120; ((ISocket)sk).JoinPlug(pg); }}
}
请用引喻的方法描述解读上方的代码:
2.下方代码课堂演练过:
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;namespace EventDemo
{//public delegate void MsgHandler(string msg);public class PinDuoDuo{public event Action<string> msgHandler;public void Order(User user){Console.WriteLine("{0}已拼单", user.Name);msgHandler += user.OnMessage;}public void UnOrder(User user){Console.WriteLine("{0}取消拼单", user.Name);msgHandler -= user.OnMessage;}public void ShipGoods(string msg){Console.WriteLine("发货");msgHandler?.Invoke(msg);}}public class User{public User(string name){Name = name;}public string Name { get; set; }public void OnMessage(string msg){Console.WriteLine("{0}收到消息:{1}", Name, msg);}}public class Program{ public static void Main(){PinDuoDuo pdd = new PinDuoDuo();User zs = new User("张三");User lisi = new User("李四");User wmz = new User("王麻子");pdd.Order(zs);pdd.Order(lisi);pdd.Order(wmz);pdd.UnOrder(lisi);pdd.ShipGoods("货已发出");}}
}
问题1:请解释代码
Action<string>
的含义.
问题2:假如上述代码是
Func<int,string>
请解释含义。
问题3:请解释代码
msgHandler += user.OnMessage;
的含义。
问题4: 请解释代码
msgHandler?.Invoke(msg);
的含义。
问题5:请解释代码
User zs = new User("张三");
的含义。
问题6:请解释代码
pdd.Order(zs);
的含义。
问题7:请解释代码
pdd.UnOrder(lisi);
的含义。
问题8:请解释代码
pdd.ShipGoods("货已发出");
的含义。
五.写代码:
利用循环语句显示出 1-100之间同时能被7整除和能被3整除的数据序列(注:只写出Main函数中的关键代码即可)。
相关文章:
《C#程序设计教程》总复习
一、单项选择题 1.short 类型的变量在内存中占据的位数是 ( )。 A. 8 B. 16 C. 32 D. 64 2.对千 int[ 4,5]型的数组 a, 数组元素 a[2,3] 存在数组第 ( )个位置上。 A. 11 B. 12 C. 14 D. 15 3.设 int 类型变量 x,y,z 的值分别是2、3、6 , 那么…...
为什么ChatGPT选择了SSE,而不是WebSocket?
我在探索ChatGPT的使用过程中,发现了一个有趣的现象:ChatGPT在实现流式返回的时候,选择了SSE(Server-Sent Events),而非WebSocket。 那么问题来了:为什么ChatGPT选择了SSE,而不是We…...

appium入门基础
介绍 appium支持在不同平台的UI自动化,如web,移动端,桌面端等。还支持使用java,python,js等语言编写自动化代码。主要用于自动化测试脚本,省去重复的手动操作。 Appium官网 安装 首先必须环境有Node.js用于安装Appium。 总体来…...

jsp介绍
JSP 一种编写动态网页的语言,可以嵌入java代码和html代码,其底层本质上为servlet,html部分为输出流,编译为java文件 例如 源jsp文件 <% page contentType"text/html; charsetutf-8" language"java" pageEncoding&…...
Debian安装k8s记录
Debian安装k8s记录 在master和node上安装kube安装master安装node遇到的问题汇总1、kubelet.service报错 failed to pull image "registry.k8s.io/pause:3.6"2、node重启后报错,failed: open /run/flannel/subnet.env: no such file or directory 在master…...

第6课 用window API捕获麦克风数据并加入队列备用
今天是2024年1月1日,新年的第一缕阳光已经普照大地,祝愿看到这篇文章的所有程序员或程序爱好者都能在新的一年里持之以恒,事业有成。 今天也是我加入CSDN的第4100天,但回过头看一看,这么长的时间也没有在CSDN写下几篇…...

图片预览 element-plus 带页码
vue3、element-plus项目中,点击预览图片,并显示页码效果如图 安装 | Element Plus <div class"image__preview"><el-imagestyle"width: 100px; height: 100px":src"imgListArr[0]":zoom-rate"1.2":max…...

【小白专用】winform启动界面+登录窗口 更新2024.1.1
需求场景:先展示启动界面,然后打开登录界面,如果登录成功就跳转到主界面 首先在程序的入口路径加载启动界面,使用ShowDialog显示界面, 然后在启动界面中添加定时器,来实现显示一段时间的效果,等…...

自动化网络故障修复管理
什么是故障管理 故障管理是网络管理的组成部分,涉及检测、隔离和解决问题。如果实施得当,网络故障管理可以使连接、应用程序和服务保持在最佳水平,提供容错能力并最大限度地减少停机时间。专门为此目的设计的平台或工具称为故障管理系统。 …...

Git:常用命令(二)
查看提交历史 1 git log 撤消操作 任何时候,你都有可能需要撤消刚才所做的某些操作。接下来,我们会介绍一些基本的撤消操作相关的命令。请注意,有些操作并不总是可以撤消的,所以请务必谨慎小心,一旦失误,…...

Oracle 12c rac 搭建 dg
环境 rac 环境 (主)byoradbrac 系统版本:Red Hat Enterprise Linux Server release 6.5 软件版本:Oracle Database 12c Enterprise Edition Release 12.1.0.2.0 - 64bit byoradb1:172.17.38.44 byoradb2:…...

Cisco模拟器-交换机端口的隔离
设计要求将某台交换机的端口划分在不同的VLAN。以实现连接在相同VLAN端口上的计算机可以通信,而连接在不同VLAN端口上的计算机无法通信的目的。 通过设计,一方面可以加强计算机网络的安全,另一方面通过隔绝不同VLAN间的广播包也可以提高网络…...
zdppy_api框架快速入门
概述 zdppy_api是一款为了快速开发而生的,基于异步的,使用简单的Python后端API接口开发框架。 本框架的目标是让Python后端开发变得越来越简单,直到发现原来还可以更简单! 一切都是为了提高开发效率!!&…...
https证书配置过程
相关网址: FreeSSL首页 - FreeSSL.cn一个提供免费HTTPS证书申请的网站 ACME v2证书自动化快速入门 acme.sh简单教程-CSDN博客...
如何用C语言程序生成任意手性(即具有任意m和n值),任意长度的碳纳米管,并输出三维空间坐标呢?
如何用C语言程序生成任意手性(即具有任意m和n值),任意长度的碳纳米管,并输出三维空间坐标呢? 生成任意手性、任意长度的碳纳米管可以使用 Chirality Vector 和 Unit Vector 的概念来表示。Chirality Vector (n, m) 描述…...

C++每日一练(8):图像相似度
题目描述 给出两幅相同大小的黑白图像(用0-1矩阵)表示,求它们的相似度。 说明:若两幅图像在相同位置上的像素点颜色相同,则称它们在该位置具有相同的像素点。两幅图像的相似度定义为相同像素点数占总像素点数的百分比。…...

C++面试宝典第12题:数组元素相除
题目 从控制台输入若干个整数作为数组,将数组中每一个元素除以第一个元素的结果,作为新的数组元素值。比如:可以先输入3,作为数组元素的个数;然后输入3个整数,作为数组元素的值。 解析 这道题本身并不复杂,但里面隐藏了不少“坑点”和“雷区”,主要考察应聘者全面思考问…...
oCPC实践录 | 目标ROI的出价与转化回传调控算法
这篇文章我们聊聊广告主在oCPC下,怎么调控自己的出价或者回传转化优化自己的ROI。 ROI是广告主最关心的指标了,根据oCPC出价的基本原理ocpc_bid pcvr * given_cpa * k, 广告主在整个出价中有两个可以控制的变量来影响出价,一个是直接的give…...
百倍量化之Dbcd-v2中性策略
Dbcd-v2中性策略 1. 指标含义 该指标主要是计算偏置的因子,并根据偏置的平均来分析这个股票的稳定性。相比于v1,策略是更换了dbcd的计算方式 第一步主要操作就是计算当前值和前段时间的平均值的偏置 ma = bt.indicators.SimpleMovingAverage(self.data, period=self.p.peri…...
系统学习Python——装饰器:函数装饰器-[装饰器状态保持方案:函数属性]
分类目录:《系统学习Python》总目录 如果我们没有在使用Python3.X并因此无法利用一条nonlocal语句,或者我们希望代码具有可移植性,能在Python3.X和Python2.X上同时工作一一我们仍然能够针对某些可改变的状态使用函数属性来避免使用全局变量和…...

【大模型RAG】拍照搜题技术架构速览:三层管道、两级检索、兜底大模型
摘要 拍照搜题系统采用“三层管道(多模态 OCR → 语义检索 → 答案渲染)、两级检索(倒排 BM25 向量 HNSW)并以大语言模型兜底”的整体框架: 多模态 OCR 层 将题目图片经过超分、去噪、倾斜校正后,分别用…...
Cursor实现用excel数据填充word模版的方法
cursor主页:https://www.cursor.com/ 任务目标:把excel格式的数据里的单元格,按照某一个固定模版填充到word中 文章目录 注意事项逐步生成程序1. 确定格式2. 调试程序 注意事项 直接给一个excel文件和最终呈现的word文件的示例,…...

python打卡day49
知识点回顾: 通道注意力模块复习空间注意力模块CBAM的定义 作业:尝试对今天的模型检查参数数目,并用tensorboard查看训练过程 import torch import torch.nn as nn# 定义通道注意力 class ChannelAttention(nn.Module):def __init__(self,…...

HTML 列表、表格、表单
1 列表标签 作用:布局内容排列整齐的区域 列表分类:无序列表、有序列表、定义列表。 例如: 1.1 无序列表 标签:ul 嵌套 li,ul是无序列表,li是列表条目。 注意事项: ul 标签里面只能包裹 li…...
多模态商品数据接口:融合图像、语音与文字的下一代商品详情体验
一、多模态商品数据接口的技术架构 (一)多模态数据融合引擎 跨模态语义对齐 通过Transformer架构实现图像、语音、文字的语义关联。例如,当用户上传一张“蓝色连衣裙”的图片时,接口可自动提取图像中的颜色(RGB值&…...
Monorepo架构: Nx Cloud 扩展能力与缓存加速
借助 Nx Cloud 实现项目协同与加速构建 1 ) 缓存工作原理分析 在了解了本地缓存和远程缓存之后,我们来探究缓存是如何工作的。以计算文件的哈希串为例,若后续运行任务时文件哈希串未变,系统会直接使用对应的输出和制品文件。 2 …...
41道Django高频题整理(附答案背诵版)
解释一下 Django 和 Tornado 的关系? Django和Tornado都是Python的web框架,但它们的设计哲学和应用场景有所不同。 Django是一个高级的Python Web框架,鼓励快速开发和干净、实用的设计。它遵循MVC设计,并强调代码复用。Django有…...

Ray框架:分布式AI训练与调参实践
Ray框架:分布式AI训练与调参实践 系统化学习人工智能网站(收藏):https://www.captainbed.cn/flu 文章目录 Ray框架:分布式AI训练与调参实践摘要引言框架架构解析1. 核心组件设计2. 关键技术实现2.1 动态资源调度2.2 …...

基于Python的气象数据分析及可视化研究
目录 一.🦁前言二.🦁开源代码与组件使用情况说明三.🦁核心功能1. ✅算法设计2. ✅PyEcharts库3. ✅Flask框架4. ✅爬虫5. ✅部署项目 四.🦁演示效果1. 管理员模块1.1 用户管理 2. 用户模块2.1 登录系统2.2 查看实时数据2.3 查看天…...
mcts蒙特卡洛模拟树思想
您这个观察非常敏锐,而且在很大程度上是正确的!您已经洞察到了MCTS算法在不同阶段的两种不同行为模式。我们来把这个关系理得更清楚一些,您的理解其实离真相只有一步之遥。 您说的“select是在二次选择的时候起作用”,这个观察非…...