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内核之第六天---调度和内核同步 心情大好,昨晚我们实验室老大和我们聊了好久,作为已经在实验室待了快两年的大三工科男来说,老师让我们不要成为那种技术狗,代码工,说多了都是泪啊,, ...
随机推荐
- CodeForces 707C Pythagorean Triples
数学,构造. 这题比较有意思,一开始没发现结论写了一个最坏复杂度为$O({10^9})$暴力居然能$AC$,正因为如此,我才发现了规律. 一开始是这么想的: 先假设$n$为直角边,设斜边长度为$c$, ...
- java 生成条形码
package com.sun.erwei; import java.awt.image.BufferedImage;import java.io.ByteArrayOutputStream;impo ...
- cshtml一二
布局页:_MyLayout.cshtml <!DOCTYPE html> @*Razor布局页*@ <html> <head> @*HTTP的头部协议,提示浏览器网 ...
- Asp.Net BulletedList使用及详解
BulletedList使用及详解 文章来源:www.cnblogs.com/xiohao/archive/2013/10/09/3359263.html BulletedList是一个让你轻松在 ...
- ubuntu 配置ftp服务器 vsftpd
1. 更新库,否则会可能有库过时不匹配报错. sudo apt-get update 2. 安装vsftpd sudo apt-get install vsftpd 3. 判断vsftpd是否安装成功 ...
- JAVA读取本地配置文件实例
import java.io.InputStream; import java.util.Properties; public class FileProperties extends Propert ...
- maven 项目 pom.xml文件中配置的jar包下载报错
[ERROR] [ERROR] Some problems were encountered while processing the POMs:[ERROR] 'dependencies.depen ...
- windows 激活等命令
Win+R 输入:slmgr.vbs -dlv 显示:最为详尽的激活信息,包括:激活ID.安装ID.激活截止日期slmgr.vbs -dli 显示:操作系统版本.部分产品密钥.许可证状态slmgr.v ...
- javascript windows对象
1.windows对象方法 2.计时器方法 3.计时器setInterval() <!DOCTYPE HTML> <html> <head> <meta ht ...
- SQL语句的优化
1.创建索引 表中数据经常需要用的哪些字段数据进行过滤,则添加该字段的索引,索引相当如一本书的目录,能加快查询数据的速度:同时在新建索引的时候,将需要查询的列,在包含性 列中新增上去,能减少查询语句的 ...