1.输入姓名直到输入的是quit时(不区分大小写),停止输入然后显示出输入的姓名个数及姓名:
要求结果如下图所示:
1 class PRogram 2 { 3 static void Main(string[] args) 4 { 5 //集合存放输入的姓名 6 List<string> listName = new List<string>(); 7 //记录输入的姓名个数 8 int count = 0; 9 int wangCount = 0;10 while (true)11 {12 Console.WriteLine("请输入姓名:");13 string input = Console.ReadLine();14 if (input[0]=='王')15 {16 wangCount++;17 }18 count++;19 listName.Add(input);20 }21 //这个是使用list的count属性22 //Console.WriteLine("你一共输了{0}同学的姓名,分别如下:", count);23 Console.WriteLine("你一共输了{0}同学的姓名,分别如下:",count);24 GetList(listName);25 Console.ReadKey();26 }27 /// <summary>28 /// 遍历姓名集合29 /// </summary>30 /// <param name="listName"></param>31 private static void GetList(List<string> listName)32 {33 34 for (int i = 0; i < listName.Count; i++)35 {36 Console.WriteLine(listName[i]);37 }38 }39 }View Code
2.题目内容同上题,再增加一个显示姓“王”的同学的个数,此处不考虑复姓问题。结果如下图:
1 class Program 2 { 3 static void Main(string[] args) 4 { 5 //集合存放输入的姓名 6 List<string> listName = new List<string>(); 7 //记录输入的姓名个数 8 int count = 0; 9 int wangCount = 0;10 while (true)11 {12 Console.WriteLine("请输入姓名:");13 string input = Console.ReadLine();14 if (input[0]=='王')15 {16 wangCount++;17 }18 if (input.ToLower() == "quit")19 {20 break;21 }22 count++;23 listName.Add(input);24 }25 //这个是使用list的count属性26 //Console.WriteLine("你一共输了{0}同学的姓名,分别如下:", count);27 Console.WriteLine("你一共输了{0}同学的姓名,分别如下:",count);28 GetList(listName);29 //使用拉姆达表达式,能看懂就行30 //Console.WriteLine("你输入的姓名中姓王的有{0}个同学", listName.Find(x => x[0] == '王').Count());31 Console.WriteLine("你输入的姓名中姓王的有{0}个同学",wangCount);32 Console.ReadKey();33 }34 /// <summary>35 /// 遍历姓名集合36 /// </summary>37 /// <param name="listName"></param>38 private static void GetList(List<string> listName)39 {40 41 for (int i = 0; i < listName.Count; i++)42 {43 Console.WriteLine(listName[i]);44 }45 }46 }View Code
如有更好的方案,请评论,谢谢!
新闻热点
疑难解答