1.输入姓名直到输入的是quit时(不区分大小写),停止输入然后显示出输入的姓名个数及姓名:

要求结果如下图所示:

 class Program
{
static void Main(string[] args)
{
//集合存放输入的姓名
List<string> listName = new List<string>();
//记录输入的姓名个数
int count = ;
int wangCount = ;
while (true)
{
Console.WriteLine("请输入姓名:");
string input = Console.ReadLine();
if (input[]=='王')
{
wangCount++;
}
count++;
listName.Add(input);
}
//这个是使用list的count属性
//Console.WriteLine("你一共输了{0}同学的姓名,分别如下:", count);
Console.WriteLine("你一共输了{0}同学的姓名,分别如下:",count);
GetList(listName);
Console.ReadKey();
}
/// <summary>
/// 遍历姓名集合
/// </summary>
/// <param name="listName"></param>
private static void GetList(List<string> listName)
{ for (int i = ; i < listName.Count; i++)
{
Console.WriteLine(listName[i]);
}
}
}

2.题目内容同上题,再增加一个显示姓“王”的同学的个数,此处不考虑复姓问题。结果如下图:

   class Program
{
static void Main(string[] args)
{
//集合存放输入的姓名
List<string> listName = new List<string>();
//记录输入的姓名个数
int count = ;
int wangCount = ;
while (true)
{
Console.WriteLine("请输入姓名:");
string input = Console.ReadLine();
if (input[]=='王')
{
wangCount++;
}
if (input.ToLower() == "quit")
{
break;
}
count++;
listName.Add(input);
}
//这个是使用list的count属性
//Console.WriteLine("你一共输了{0}同学的姓名,分别如下:", count);
Console.WriteLine("你一共输了{0}同学的姓名,分别如下:",count);
GetList(listName);
//使用拉姆达表达式,能看懂就行
//Console.WriteLine("你输入的姓名中姓王的有{0}个同学", listName.Find(x => x[0] == '王').Count());
Console.WriteLine("你输入的姓名中姓王的有{0}个同学",wangCount);
Console.ReadKey();
}
/// <summary>
/// 遍历姓名集合
/// </summary>
/// <param name="listName"></param>
private static void GetList(List<string> listName)
{ for (int i = ; i < listName.Count; i++)
{
Console.WriteLine(listName[i]);
}
}
}

如有更好的方案,请评论,谢谢!

c# 输入姓名直到输入的是quit时,停止输入然后显示出输入的姓名个数及姓名的更多相关文章

  1. 代码实现程序启动后, 可以从键盘输入接收多个整数, 直到输入quit时结束输入. 把所有输入的整数倒序排列打印

    package com.loaderman.test; import java.util.Comparator; import java.util.Scanner; import java.util. ...

  2. Android 在界面中显示以及输入文本信息 TextView和EditText

    Android控件之TextView和EditTextTextView:显示文本框控件EditText:输入文本框TextView和EditText的常用属性TextView控件的常用属性androi ...

  3. shell 标出输入、标准输出、错误输出

    shell中可能经常能看到:>/dev/null  2>&1  eg:sudo kill -9 `ps -elf |grep -v grep|grep $1|awk '{print ...

  4. web工作方式,浏览网页,打开浏览器,输入网址按下回车键,然后会显示出内容,这个过程是怎样的呢?

    以下内容摘自<Go Web编程>,介绍的通俗易懂. 我们平时浏览网页的时候,会打开浏览器,输入网址后按下回车键,然后就会显示出你想要浏览的内容.在这个看似简单的用户行为背后,到底隐藏了些什 ...

  5. char *s = getpass()屏幕不回显示 ,返回输入的字符

    char *s = getpass(“please input you name:”)屏幕不回显示 ,返回输入的字符

  6. dede后台出现   保存目录数据时失败,请检查你的输入资料是否存在问题

    dede 5.7无法增加顶级/二级栏目,保存目录数据时失败,请检查你的输入资料是否存在问题!执行了SQL还是不行 解决档案:用正常可以添加栏目的,将E:\wamp\www\dededln\back(d ...

  7. NGUI---使用脚本控制聊天系统的内容显示,输入事件交互

    在我的笔记Unity3D里面之 简单聊天系统一 里面已经介绍怎么创建聊天系统的背景.给聊天系统添加滚动条,设置Anchor锚点.以及设计聊天系统的输入框. 效果图如下所示: 现在我们要做的就是使用脚本 ...

  8. 42.输入一个递增排序的数组和一个数字S,在数组中查找两个数,使得他们的和正好是S, 如果有多对数字的和等于S,输出两个数的乘积最小的。

    输入一个递增排序的数组和一个数字S,在数组中查找两个数,使得他们的和正好是S, 如果有多对数字的和等于S,输出两个数的乘积最小的. 这道题有很多烟雾弹: 首先如果有多对,最前面的两个数就是乘积最小的, ...

  9. c# 输入多个数字,当输入不是数字时显示出刚输入的所有数并按降序

    输入多个数字,当输入不是数字时显示出刚输入的所有数并按降序 class Program { static void Main(string[] args) { //定于一个集合 List<int ...

随机推荐

  1. centos云服务器安装Python3记录

    题记 购买了一个月的服务器和公网ip,计划用Python与Nginx写一个web服务,于是踏上了漫漫的摸索之路. 行程 步骤 1.本地ssh连接. 2.mkdir /usr/local/python3 ...

  2. struts2框架之OGNL表达式概述(在代码中使用OGNL表达式)

    1. OGNL是Object Graphic Navigation Language(对象图导航语言)的缩写 * 所谓对象图,即以任意一个对象为根,通过OGNL可以访问与这个对象关联的其它对象 * 通 ...

  3. Linux动态共享库

    Linux操作系统上面的动态共享库大致分为三类:   一.操作系统级别的共享库和基础的系统工具库 libc.so, libz.so, libpthread.so等等,这些系统库会被放在/lib和/us ...

  4. Scrum 团队成立 -- 软件工程

      团队项目选题  : 金融工具:复利计算与投资记录项目继续升级,开发定位明确.功能专注的工具类软件 团队队员 : 蔡舜 , 林宇粲 , 王昕明 , 卢晓洵 团队目标 : 不断完善 团队口号 : 永不 ...

  5. BZOJ 1345[BOI]序列问题 - 贪心 + 单调栈

    题解 真的没有想到是单调栈啊. 回想起被单调栈支配的恐惧 最优情况一定是小的数去合并 尽量多的数,所以可以维护一个递减的单调栈. 如果加入的数比栈首小, 就直接推入栈. 如果加入的数大于等于栈首, 必 ...

  6. datagrid分页 从后端获取数据也很简单

    <%@ Page Language="C#" AutoEventWireup="true" CodeBehind="Datagrid.aspx. ...

  7. cmd里面怎么复制粘贴

    不要打开快速编辑模式,他只能复制粘贴cmd里面的内容 其实用标记即可. 右键选择标记,然后框选内容后右键就复制了 然后再右键粘贴就行了.

  8. tensorflow的transpose

    从图中看出来perm=[1,0,2] 表示第一个维度和第二个维度进行交换. 默认的是[0,1,2]   所以perm=[1,0,2] 表示第一个维度和第二个维度进行交换.0,1,2表示index.

  9. Mybatis之拦截器原理(jdk动态代理优化版本)

    在介绍Mybatis拦截器代码之前,我们先研究下jdk自带的动态代理及优化 其实动态代理也是一种设计模式...优于静态代理,同时动态代理我知道的有两种,一种是面向接口的jdk的代理,第二种是基于第三方 ...

  10. js正则表达式汇集

    1.只允许中文.字母.数字.中划线.下划线.空格.中文的().英文的()和#,只能以数字.中文.字母.下划线开头,长度为2至40之间 validateTemplateName: function(va ...