字符串的处理练习:

课上练习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#第六天的更多相关文章

  1. python之在线PK游戏(第六天)

      本节作业: 熟练使用类和模块,写一个交互性强.有冲突的程序. 故本次写了一个文字回合制的PK游戏,系统主程序为根目录下的:game_menu.py 1. 系统功能模块: 第六天的作业:文字游戏程序 ...

  2. 10天学会phpWeChat——第六天:实现新闻的后台管理

    通过前面五讲的系列教程,我们完成了一个简单模块的前端发布.列表展示.详情展示.实际生产环境中,所有前台的数据都会有对应的后台操作进行统筹管理.我们称之为后台管理系统. 今天,我们开始<10天学会 ...

  3. 十五天精通WCF——第六天 你必须要了解的3种通信模式

    wcf已经说到第六天了,居然还没有说到这玩意有几种通信模式,惭愧惭愧,不过很简单啦,单向,请求-响应,双工模式,其中的第二种“请求-响应“ 模式,这个大家不用动脑子都清楚,这一篇我大概来分析下. 一: ...

  4. 七、Android学习第六天——SQLite与文件下载(转)

    (转自:http://wenku.baidu.com/view/af39b3164431b90d6c85c72f.html) 七.Android学习第六天——SQLite与文件下载 SQLite SQ ...

  5. <实训|第六天>偷偷让新手的Linux无限重启附linux主机名称不是随便乱改的!

    先说个事情:这几天我正在忙一个项目的设计,8月1号之前要弄出来,所以每天都要弄到很晚,可能更新就有点跟不上了,不过我如果有时间的话,我就更新,没时间的话,我会在8月1号之后统一更新出来,希望大家谅解! ...

  6. 安卓第六天笔记--ListView

    安卓第六天笔记--ListView 1.AdapteView AdapteView 继承ViewGroup它的本质是容器 AdapterView派生了3个子类: AbsListView AbsSpin ...

  7. IOS第六天(3:scrollView 图片轮播器)

    IOS第六天(3:scrollView 图片轮播器) #import "HMViewController.h" #define kImageCount 5 @interface H ...

  8. javaSE第六天

    第六天    28 1. 二维数组(理解)    28 (1)就是元素为一维数组的一个数组.    28 (2)格式:    28 (3)案例(掌握):    28 A:二维数组的遍历    28 B ...

  9. IT第六天 - eclipse快捷操作、万年历项目的编写、菱形的打印输出、代码简化

    IT第六天 上午 小项目 1.程序提前结束的退出标志 2.登录用户的模拟,给出适当的提示信息 3.根据要求,寻找规律,然后编写程序 Eclipse的使用 1.快捷键的使用 下午 中小项目 1.九九乘法 ...

  10. 十天学Linux内核之第六天---调度和内核同步

    原文:十天学Linux内核之第六天---调度和内核同步 心情大好,昨晚我们实验室老大和我们聊了好久,作为已经在实验室待了快两年的大三工科男来说,老师让我们不要成为那种技术狗,代码工,说多了都是泪啊,, ...

随机推荐

  1. 更改pip源

    ~/.pip/下新建pip.conf文件:(Windows下载Users/xxx/pip/pip.ini) [global] trusted-host = pypi.douban.com index- ...

  2. Sipdroid实现SIP(一): 注册

    目录 注册: 预注册获取长号和用户注册 预注册返回长号 周期性用户注册 Receiver类概述 SipdroidEngine类概述 Sipdroid类中的用户注册: 注册代理和注册事务 注册代理类Re ...

  3. eclipse 安卓运行一直跳转到调试模式

    最直接的办法,换手机试试,如果在其他手机上能run,那就重启手机即可 感觉写这么一点点似乎不足以发表一篇博客,给个链接吧:http://www.itnose.net/detail/6103213.ht ...

  4. .net C# 苹果消息推送 工具类

    public class AppleAPNSMessage { /// <summary> /// 苹果信息推送 证书 路径(注意测试版跟正式发布版证书上不一样) /// </sum ...

  5. 使用firbug调试程序写更高质量的代码设置方法

    在搜狐浏览器内输入about:config 在搜索栏中输入:strict 双击javascript.options.strict,将值变为true

  6. 简单的socket方法

    void sockfunc() { WSADATA Ws; WSAStartup(MAKEWORD(,), &Ws); SOCKET hs = socket(AF_INET, SOCK_STR ...

  7. LWP::UserAgent介绍3 -> cookie设置

    use LWP::UserAgent; use HTTP::Cookies; my $ua = LWP::UserAgent->new; $ua->cookie_jar(HTTP::Coo ...

  8. React Route

    有幸你能看来我的这篇文章,这篇文章是继React后面写的Reactroute,所以你需要看看我前面整理的React笔记再来看Reactroute可能更容易 All the work we've don ...

  9. EasyUI 日期选择插件封装成选择到月份的插件

    将普通的日期选择插件封装成选择到月份的插件:                     var nowMonth = new Date();                    var month = ...

  10. MySQL设置binlog日志的有效期自动回收

    设置日志保留天数,到期后自动删除 查看当前日志保存天数: show variables like '%expire_logs_days%'; 默认是0,即永不过期. 通过设置全局参数修改: set g ...