C#第六天
字符串的处理练习:
课上练习1:接收用户输入的字符串,将其中的字符以与输入相反的顺序输出。"abc"→"cba"
方法1:
string str = "abcdefg";
for (int i = str.Length - ; i >= ; i--)
{
//倒叙循环
Console.WriteLine(str[i]);
}
Console.ReadKey();
方法2:
string str = "abcdefg";
char[] chs = str.ToCharArray();
for (int i = ; i < chs.Length / ; i++)
{
//数组反转
char temp = chs[i];
chs[i] = chs[chs.Length - - i];
chs[chs.Length - - i] = temp;
}
str = new string(chs);
Console.WriteLine(str);
Console.ReadKey();
课上练习2:接收用户输入的一句英文,将其中的单词以反序输出。"hello c sharp"→"sharp c hello"
string str = "hello c sharp";
string[] strNew = str.Split(new char[] { ' ' }, StringSplitOptions.RemoveEmptyEntries);
for (int i = ; i < strNew.Length / ; i++)
{
string temp = strNew[i];
strNew[i] = strNew[strNew.Length - - i];
strNew[strNew.Length - - i] = temp;
}
//将字符串数组按照指定的分隔符连接,返回一个字符串
string s = string.Join(" ", strNew);
Console.WriteLine(s);
Console.ReadKey();
课上练习3:从Email中提取出用户名和域名:abc@163.com。
string email = "abc@163.com";
int index = email.IndexOf('@');
string userName = email.Substring(,index);
string yuMing = email.Substring(index + );
Console.WriteLine(userName);
Console.WriteLine(yuMing);
Console.ReadKey();
课上练习4:文本文件中存储了多个文章标题、作者,标题和作者之间用若干空格(数量不定)隔开,每行一个,标题有的长有的短,输出到控制台的时候最多标题长度10,如果超过10,则截取长度8的子串并且最后添加“...”,加一个竖线后输出作者的名字。
//文本存储路径为 C:\Users\Administrator\Desktop\操作文本.txt";
//文本内容为:
//平凡的世界 路遥
//坏蛋是怎样炼成的 六道
//遮天 辰东
//C#程序员必读的一些书籍 逗逼秀
string path = @"C:\Users\Administrator\Desktop\操作文本.txt";
string[] contents = File.ReadAllLines(path, Encoding.Default);
for (int i = ; i < contents.Length; i++)
{
string[] strNew = contents[i].Split(new char[]{' '},StringSplitOptions.RemoveEmptyEntries);
Console.WriteLine((strNew[].Length>?strNew[].Substring(,)+"......":strNew[])+"|"+strNew[]);
}
Console.ReadKey();
练习5:让用户输入一句话,找出所有e的位置
方法1:
string str = "adjdslhgenleeklebeiugyveegjbeejkke";
for (int i = ; i < str.Length; i++)
{
if (str[i] == 'e')
{
Console.WriteLine(i);
}
}
Console.ReadKey();
方法2:
string str = "adjdslhgenleeklebeiugyveegjbeejkke";
int index = str.IndexOf('e');
Console.WriteLine("第一次出现的位置是{0}", index);
//从上一次出现e的位置加1找下一次e出现的位置
//循环条件index!=-1
int count = ;
while (index != -)
{
count++;
index = str.IndexOf('e', index + );
if (index == -)
{
break;
}
Console.WriteLine("第{0}次出现的位置是{1}", count, index);
}
Console.ReadKey();
C#第六天的更多相关文章
- python之在线PK游戏(第六天)
本节作业: 熟练使用类和模块,写一个交互性强.有冲突的程序. 故本次写了一个文字回合制的PK游戏,系统主程序为根目录下的:game_menu.py 1. 系统功能模块: 第六天的作业:文字游戏程序 ...
- 10天学会phpWeChat——第六天:实现新闻的后台管理
通过前面五讲的系列教程,我们完成了一个简单模块的前端发布.列表展示.详情展示.实际生产环境中,所有前台的数据都会有对应的后台操作进行统筹管理.我们称之为后台管理系统. 今天,我们开始<10天学会 ...
- 十五天精通WCF——第六天 你必须要了解的3种通信模式
wcf已经说到第六天了,居然还没有说到这玩意有几种通信模式,惭愧惭愧,不过很简单啦,单向,请求-响应,双工模式,其中的第二种“请求-响应“ 模式,这个大家不用动脑子都清楚,这一篇我大概来分析下. 一: ...
- 七、Android学习第六天——SQLite与文件下载(转)
(转自:http://wenku.baidu.com/view/af39b3164431b90d6c85c72f.html) 七.Android学习第六天——SQLite与文件下载 SQLite SQ ...
- <实训|第六天>偷偷让新手的Linux无限重启附linux主机名称不是随便乱改的!
先说个事情:这几天我正在忙一个项目的设计,8月1号之前要弄出来,所以每天都要弄到很晚,可能更新就有点跟不上了,不过我如果有时间的话,我就更新,没时间的话,我会在8月1号之后统一更新出来,希望大家谅解! ...
- 安卓第六天笔记--ListView
安卓第六天笔记--ListView 1.AdapteView AdapteView 继承ViewGroup它的本质是容器 AdapterView派生了3个子类: AbsListView AbsSpin ...
- IOS第六天(3:scrollView 图片轮播器)
IOS第六天(3:scrollView 图片轮播器) #import "HMViewController.h" #define kImageCount 5 @interface H ...
- javaSE第六天
第六天 28 1. 二维数组(理解) 28 (1)就是元素为一维数组的一个数组. 28 (2)格式: 28 (3)案例(掌握): 28 A:二维数组的遍历 28 B ...
- IT第六天 - eclipse快捷操作、万年历项目的编写、菱形的打印输出、代码简化
IT第六天 上午 小项目 1.程序提前结束的退出标志 2.登录用户的模拟,给出适当的提示信息 3.根据要求,寻找规律,然后编写程序 Eclipse的使用 1.快捷键的使用 下午 中小项目 1.九九乘法 ...
- 十天学Linux内核之第六天---调度和内核同步
原文:十天学Linux内核之第六天---调度和内核同步 心情大好,昨晚我们实验室老大和我们聊了好久,作为已经在实验室待了快两年的大三工科男来说,老师让我们不要成为那种技术狗,代码工,说多了都是泪啊,, ...
随机推荐
- openstack私有云布署实践【11.1 计算nova - compute节点配置(科兴环境)】
这里我只使用kxcompute1节点配置为示例,其它节点的配置基本是一样的,只是声明的管理IP不同而已 计算节点 # yum install openstack-nova-compute sysf ...
- 嵌入式系统基础知识(一): 系统结构和嵌入式Linux
目录 一. 嵌入式体系结构 二. 开发过程中的分工 三. 嵌入式软件体系结构 四. 嵌入式Linux 一. 嵌入式体系结构 <嵌入式系统设计师教程>这本书的前三章脉络很清晰, 按照嵌入式系 ...
- 解决 bootstrap 在IE8下的兼容问题
<meta http-equiv="X-UA-Compatible" content="IE=edge"><meta name="v ...
- 面试题-Java基础-线程部分
1.进程和线程的区别是什么? 进程是执行着的应用程序,而线程是进程内部的一个执行序列.一个进程可以有多个线程.线程又叫做轻量级进程. 2.创建线程有几种不同的方式?你喜欢哪一种?为什么? 有三种方式可 ...
- informix数据迁移工具使用介绍
一.dbschema USAGE: dbschema [-q] [-t tabname] [-s user] [-p user] [-r rolename] [-f procname] ...
- 一.HttpClient、JsonPath、JsonObject运用
HttpClient详细应用请参考官方api文档:http://hc.apache.org/httpcomponents-client-4.5.x/httpclient/apidocs/index.h ...
- Pthon修炼5
函数 一.自定义函数 def:表示函数的关键字 函数名:函数的名称 函数体:函数中进行一系列的逻辑计算 参数:为函数体提供数据 返回值:执行完函数return 一个值 例:def count(x ...
- C# 委托的三种调用示例(同步调用 异步调用 异步回调)
首先,通过代码定义一个委托和下面三个示例将要调用的方法: 复制代码 代码如下: public delegate int AddHandler(int a,int b); public class ...
- FOUNDATION_EXPORT 延伸
一般iOS我们定义常量的方法有两种,来看下面例子 我的.h文件 1 2 FOUNDATION_EXPORT NSString * const kMyConstantString; FOUNDATI ...
- 【.NET】上传文件,生成缩略图
类名:Upload using System; using System.Collections; using System.ComponentModel; using System.Data; us ...