.C#认证考试试题汇编:第一单元:1,11 第二单元:1,11
第一单元1,11
好久没用异或都快忘了,就让我们一起来了解哈啥子事异或
说的这个,就不经意让我想起书上的几种交换值得方法了
我这儿说的交换的方法是,不使用第三个变量来交换,而是两个
实现条件是C
a=100,b=10;
第一种 缺点可能会如果超出范围溢出
a=a+b; a=110,b=10
b=a-b; b=100,a=110
a=a-b; a=-10,b=100
b=100,a=10;
第二种 缺点可能会如果超出范围溢出
a=a*b;a=1000,b=10
b=a/b;b=100,a=1000
a=a/b;a=10,b=100
第三种 最理想
例如:a=3,即11(2);b=4,即100(2)。
想将a和b的值互换,可以用以下赋值语句实现:
a=a∧b;
b=b∧a;
a=a∧b;
a=011(2)(∧)b=100(2)(a∧b的结果,a已变成7)
a=111(2)(∧)b=100(2)(b∧a的结果,b已变成3)
b=011(2)(∧)a=111(2)(a∧b的结果,a已变成4)
a=100(2)
a=10100001, b=00000110
a=a^b; //a=10100111
b=b^a; //b=10100001
a=a^b; //a=00000110
其实如果简单理解“相同为0”不同为1
如何还想在深入点,我只能说,小伙,咱家能力有限
using System;
using System.Collections.Generic;
using System.Linq;
using System.Security.Cryptography;
using System.Text;
using System.Threading.Tasks;
namespace 习题1._11
{
class Program
{
static void Main(string[] args)
{
string s_text, s_key, s_result = null;
char ch;
Console.WriteLine("请输入原字符串:");
s_text = Console.ReadLine().ToString();
Console.WriteLine("请输入密钥字符串");
s_key = Console.ReadLine().ToString();
if(s_text.Length!=s_key.Length)
{
Console.WriteLine("密钥字符串与原字符串长度必须相等");
return; //提前结束程序
}
for(int i=0;i<s_key.Length;i++)
{
ch = s_text[i];
s_result += (char)(ch ^ s_key[i]); //同志们注意哈强制转换为char类型不然得到的结果不对
}
Console.WriteLine("加密后的字符串为:");
Console.WriteLine(s_result.ToString());
Console.ReadKey();
}
}
}
第二单元1,11
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
namespace Animal
{
class Animal
{
private bool m_sex;
private string m_sound;
public Animal()
{
m_sound = "How...";
m_sex = false;
}
//前面一定不能打括号()
public bool Sex //用于子类设置基类的变量
{
get { return m_sex; }
set { m_sex = value; }
}
public string Sound
{
get { return m_sound; }
set { m_sound = value; }
}
public virtual string Roan() //虚方法
{
return "Animal"+m_sound;
}
}
class Dog:Animal
{
public Dog()
{
Sex = true;
Sound = "Wow...";
}
public override string Roan() //重写方法
{
return "Dog:" + Sound;
}
}
class Cat : Animal
{
public Cat()
{
Sound = "Miaow...";
}
public override string Roan()
{
return "Cat:"+Sound;
}
}
class Cow : Animal
{
public Cow()
{
Sound = "Moo...";
}
public override string Roan()
{
return "Cow:" + Sound;
}
}
class Program
{
static void Main(string[] args)
{
Animal animal;
animal = new Dog();
Console.WriteLine( animal.Roan());
animal = new Cat();
Console.WriteLine(animal.Roan());
animal = new Cow();
Console.WriteLine(animal.Roan());
Console.Read();
}
}
}
.C#认证考试试题汇编:第一单元:1,11 第二单元:1,11的更多相关文章
- Linux rhcsa认证考试试题模拟
声明: 此套试题是2017年rhcsa考试题库,本题库需配合相对应的机器操作,实验环境在我的网盘下载 考试环境: server.group8.example.com 172.24.8.254/24 s ...
- HTML5 +Java基础 大一结业认证考试试题 - 云南农业职业技术学院 - 互联网技术学院 - 美和易思校企合作专业
第1题 [单选题][0.33分][概念理解] 关于java中的逻辑运算符,下列说法正确的是 逻辑运算符||.&&.!都是用于连接两个关系表达式</p> 当&&am ...
- CCF CSP认证考试试题
1. 201803-1 跳一跳 试题编号: 201803-1 试题名称: 跳一跳 时间限制: 1.0s 内存限制: 256.0MB 问题描述: 问题描述 近来,跳一跳这款小游戏风靡全国,受到不少玩家的 ...
- Java高级大一结业认证考试试题 - 云南农业职业技术学院 - 互联网技术学院 - 美和易思校企合作专业
第1题 .关于XML的文档结构描述错误的是 一个基本的XML文档通常由序言和文档元素两部分组成 XML文档中的序言可以包括XML声明.处理指令和注释 XML文档中的元素以树形结构排列 XML文档的声 ...
- 第二单元电梯调度作业 By Wazaki
figure:first-child { margin-top: -20px; } #write ol, #write ul { position: relative; } img { max-wid ...
- 软件设计师.NET认证考试测试卷(试题及答案)
软件设计师.NET认证考试测试卷 注意事项:用蓝.黑色钢笔答题.保持卷面整洁. 得分 阅卷人 一.单项选择(40分,每小题1分) 1.以下标识符中不全是关键字的是(D ) A.case for in ...
- 网友RHCE认证考试经历
2014年7月,为大力推广RedHat Enterprise Linux7操作系统,红帽将基RHCE认证由RHEL6转换到RHEL7上. 面对新的软件功能.新认证课程内容,初期认证学员的考试通过率一直 ...
- PMP认证考试的最新趋势及10大特征(针对改版后)
我们都知道,今年PMP认证考试的教材已经改版了,最新版的内容是有不少的改动的,我们在了解PMP考试的时候,也要了解PMP考试的最新趋势,以便拿出应对的方法. 一.情景题更接地气 虽然PMP考试中继续保 ...
- Java 初级软件工程师 认证考试试卷1
Java 初级软件工程师 认证考试试卷 笔试(A卷) 考试时间150分钟 总分 100分 姓 名_______________________ 身份证号_____________ ...
随机推荐
- 后台如何通过Request取得多个含有相同name的控件的值?
在Asp.net开发中,所有html控件的值都是可以在服务器端用后台代码的Request[name]来获取其值的.但如果有多个相同name的Html控件提交到后台,怎么分别取各个控件的值呢?而多数情况 ...
- Python时间calender模块介绍
获取某月日历 Calendar模块有很广泛的方法用来处理年历和月历,例如打印某月的月历: #!/usr/bin/python # -*- coding: UTF-8 -*- import calend ...
- Fiddler模拟发送post请求
fiddler在进行接口测试时,会模拟post请求,发送不同的请求参数,返回不同的结果,今天我们就来分享一下,怎么用Fiddler工具模拟post请求: 打开Fiddler工具,在右侧点击“compo ...
- java多线程开发,Executors、FutureTask、Callable
java多线程如何应用呢,几乎学java的同学都知道Thread类和Runable接口.继承Thread类或者实现Runable接口,调用thread的start方法即可启动线程. 然后是线程池,就是 ...
- 游戏反编译工具dnSpy
dnSpy使用的工具下载地址为: https://github.com/cnxy/dnSpy/archive/v4.0.0.zip 或 dnSpy官方下载地址: https://github.com/ ...
- [转].NET Core dotnet 命令大全
本文转自:http://www.cnblogs.com/linezero/p/dotnet.html https://docs.microsoft.com/en-us/dotnet/articles/ ...
- 任意表格(table)实现拖动列(column)改变列大小
直接上代码吧,原理可以看我上一篇博文.本实现基于jquery,完美实现拖动改变表格的列大小功能,只需将代码放置在你页面的底部即可(jquery必须先引入). $(function () { var i ...
- influxdb 的安装(centos)
安装命令: # for 64-bit systems wget http://s3.amazonaws.com/influxdb/influxdb-latest-1.x86_64.rpm sudo r ...
- jQuery源码分析系列 : 整体架构
query这么多年了分析都写烂了,老早以前就拜读过, 不过这几年都是做移动端,一直御用zepto, 最近抽出点时间把jquery又给扫一遍 我也不会照本宣科的翻译源码,结合自己的实际经验一起拜读吧! ...
- JavaEE之JavaWeb核心之Servlet
Servlet简介: Servlet 运行在服务端的Java小程序,是sun公司提供一套规范(接口),用来处理客户端请求.响应给浏览器的动态资源.但servlet的实质就是java代码,通过java的 ...