一、实验目的

  1. 掌握Visual Studio(C#编程界面)和调试的基本方法;
  2. 掌握C#类型系统;
  3. 掌握C#控制语句用法;
  4. 掌握数组的用法;

二、实验内容

1)在程序主方法中,由用户依次输入一个字符串text,以及一个加密字符key,其中变量key保存为int类型。

(提示:加密字符通过Console.ReadKey().KeyChar输入)

2)进行字符串加密。此处采用的加密方法是:将密钥字符与字符串中的每个字符进行异或运算。如’a’与’l’异或结果为字符’P’。

编译运行程序,查看字符串加密结果。

(提示:异或运算只能在整数之间进行,结果也是整数,注意类型转换。可用foreach(char c in text)循环处理字符串。用+=运算符可将字符添加到字符串中。)

3)进行字符串解密。

原理:异或运算具有可逆性,如字符’P’与’l’的异或仍为字符’a’。编写代码取回原字符串并输出。

输出格式参考:

请输入字符串:

abcdefg

请输入加密字符:

1

加密后的字符串为:PSRUTWV

解码后的字符串为:abcdefg

源代码

using System;namespace Homework15
{class Program{static void Main(string[] args){Console.WriteLine("输入一个字符串:");string str1 = Console.ReadLine();Console.WriteLine("输入一个加密字符:");char pwd = Console.ReadKey().KeyChar;Console.WriteLine();string str2="";for (int i = 0; i < str1.Length; i++) {str2=str2+ (char)(str1[i] ^ pwd);}Console.WriteLine("加密后的字符串为:" + str2);str1 = "";for (int i = 0; i < str2.Length; i++){str1 = str1 + (char)(str2[i] ^ pwd);}Console.WriteLine("解密后的字符串为:" + str1);Console.WriteLine("Hello World!");}}
}

运行结果

三、实验心得与体会

  1. 掌握Visual Studio(C#编程界面)和调试的基本方法;
  2. 掌握C#类型系统;
  3. 掌握C#控制语句用法;
  4. 掌握数组的用法;

参考文章

https://www.jb51.net/article/68618.htm

C#——《C#语言程序设计》实验报告——面向对象程序设计——字符串加密相关推荐

  1. C#程序设计实验报告面向对象程序设计(实验1第二题)附源码

    课程名称 C#程序设计 实验名称 实验一 贰.第二题 一.实验题目 假设图书馆的图书类Book包含书名.编号.出版社.作者属性,读者类Reader包含姓名和借书证属性,每位读者最多可以借阅5本书,设计 ...

  2. java程序设计实验报告_JavA程序设计实验报告.doc

    Java程序设计实验报告 学号: 姓名: 座位号: 实验日期: [实验名称]: JDK配置与开发工具的使用 [实验目的]: 熟悉JDK开发环境. 熟悉EditPlus编辑器或Eclipse等开发环境的 ...

  3. 计算机测绘程序设计实验报告,测绘程序设计(VS2008)实验报告--文件操作.docx

    测绘程序设计(VS2008)实验报告--文件操作.docx 上传人:B****s 文档编号:18365883 上传时间:2019-04-28 格式:DOCX 页数:9 大小:102.93KB 下载提示 ...

  4. C#——《C#语言程序设计》实验报告——面向对象程序设计——自动出题判分小程序

    一.实验目的 掌握Visual Studio(C#编程界面)和调试的基本方法: 掌握C#类型系统: 掌握C#控制语句用法: 掌握数组的用法: 二.实验内容 编写一个Windows程序,实现自动出题并判 ...

  5. html语言的使用的实验报告,html程序设计实验报告.doc

    html程序设计实验报告 html程序设计实验报告 篇一:Html设计实验报告 <网页设计>实验报告 (2010-2011学年第二学期) 班 级:姓 名: 学 号:指导老师: 实验一 认识 ...

  6. 20145206《Java程序设计》实验二Java面向对象程序设计实验报告

    20145206<Java程序设计>实验二Java面向对象程序设计实验报告 实验内容 初步掌握单元测试和TDD 理解并掌握面向对象三要素:封装.继承.多态 初步掌握UML建模 熟悉S.O. ...

  7. c语言猜拳游戏实训报告,Java猜拳小游戏程序设计实验报告.doc

    Java程序设计实验报告 班级: 学号: 姓名: 实验题目:猜拳小游戏 实验要求: 用java编写一个人机对战的猜拳小游戏.人选择性出拳,电脑随机出拳,判断输赢,记录输赢情况.有简单的操作界面. 实验 ...

  8. c语言程序设计实验报告2,C语言程序设计实验报告2.docx

    C语言程序设计实验报告2.docx 下载提示(请认真阅读)1.请仔细阅读文档,确保文档完整性,对于不预览.不比对内容而直接下载带来的问题本站不予受理. 2.下载的文档,不会出现我们的网址水印. 3.该 ...

  9. 20175212童皓桢 Java实验二-面向对象程序设计实验报告

    20175212童皓桢 Java实验二-面向对象程序设计实验报告 实验内容 初步掌握单元测试和TDD 理解并掌握面向对象三要素:封装.继承.多态 初步掌握UML建模 熟悉S.O.L.I.D原则 了解设 ...

最新文章

  1. CentOS 6.4下PXE+Kickstart无人值守安装操作系统
  2. 独家 | 浅谈强化学习原理(附代码链接)
  3. 40条怼人不带脏字的句子
  4. matlab 数字转化为文字,将文本转换为数值 - MATLAB Simulink - MathWorks 中国
  5. python 逗号作用 语句间_Python中逗号的三种作用
  6. 通信协议—HTTP、TCP、UDP
  7. c# 单元测试工程如何取得当前项目路径
  8. .NET WebSocket 核心原理初体验
  9. pca图像压缩python_基于PCA的图像降维及图像重构
  10. 磊哥最近面试了好多人,聊聊我的感受!(附面试知识点)
  11. 国内首家!腾讯云密钥管理系统通过密码应用验证,积极探索行业标准边界
  12. Oracle定时任务
  13. 【人脸识别】LFW数据集介绍
  14. Android模拟器PANIC: Could not open:问题解决方法
  15. 51Nod-1126 求递推序列的第N项【递推序列+模除】
  16. mysql一键部署_一键部署----mysql5.6--jue
  17. (数据挖掘-入门-4)基于物品的协同过滤
  18. 游戏测试(面试可用)
  19. 简单的poc以及exp编写(入门篇)
  20. 给老徐的书《软件自动化测试实战解析-基于Python3》写的序

热门文章

  1. android点击事件禁用,android-禁用所有视图的触摸事件
  2. java filter函数的用法_5分钟掌握Python | Map、Reduce和Filter如何运用?
  3. android listview 列加id,Android实战开发之ListView同一个item显示2列的实现方法
  4. 面具卡米怎么删模块_魔兽8.3咋肥事——面具带几个收益高?对小怪宝箱水晶有加成吗?...
  5. 深度学习和目标检测系列教程 3-300:了解常见的目标检测的开源数据集
  6. kaggle (自杀分析)
  7. 【Python金融量化 2- 100 】股票量化分析基本知识
  8. 百万大数据架构师学习笔记
  9. 北京内推 | 微软亚洲研究院MSRA STCA招聘多模态算法实习生
  10. CVPR 2022 | 利用域自适应思想,北大、字节跳动提出新型弱监督物体定位框架