1. using System;
    2. using System.Collections.Generic;
    3. using System.Linq;
    4. using System.Text;
    5. using System.Threading.Tasks;
    6. namespace _41_方法的综合练习
    7. {
    8. class Program
    9. {
    10. static void Main(string[] args)
    11. {
    12. //提示用户输入两个数字,计算这两个数字之间(包括这两个数)所有整数的和
    13. //1.用户只能输入数字
    14. //2.计算两个数字之和
    15. //3.要求第一个数字必须比第二个数字小,否则重新输入
    16. Console.WriteLine("请输入第一个数字:");
    17. string strNumberOne = Console.ReadLine();
    18. int numberOne = GetNumber(strNumberOne);
    19. Console.WriteLine("请输入第二个数字:");
    20. string strNumberTwo = Console.ReadLine();
    21. int numberTwo = GetNumber(strNumberTwo);
    22. //判断第一个数字是否小于第二个数字
    23. JudgeNumber(ref numberOne, ref numberTwo);
    24. //求和
    25. int sum = GetSum(numberOne, numberTwo);
    26. Console.WriteLine(sum);
    27. Console.ReadKey();
    28. }
    29. /// <summary>
    30. /// 判断输入是否为int类型
    31. /// </summary>
    32. /// <param name="s">输入的内容</param>
    33. /// <returns>int类型的值</returns>
    34. public static int GetNumber(string s)
    35. {
    36. while (true)
    37. {
    38. try
    39. {
    40. int number = Convert.ToInt32(s);
    41. return number;
    42. }
    43. catch
    44. {
    45. Console.WriteLine("输入错误,请重新输入:");
    46. s = Console.ReadLine();
    47. }
    48. }
    49. }
    50. /// <summary>
    51. /// 判断第一个数是否比第二个数小
    52. /// </summary>
    53. /// <param name="n1">用户输入的第一个数</param>
    54. /// <param name="n2">用户输入的第二个数</param>
    55. public static void JudgeNumber(ref int n1, ref int n2)
    56. {
    57. while (true)
    58. {
    59. if (n1 < n2)
    60. {
    61. //符合题意
    62. return;
    63. }
    64. else
    65. {
    66. Console.WriteLine("第一个数字不能大于或等于第二个数字,请重新输入第一个数字:");
    67. string s1 = Console.ReadLine();
    68. n1 = GetNumber(s1);
    69. Console.WriteLine("请重新输入第二个数字:");
    70. string s2 = Console.ReadLine();
    71. n2 = GetNumber(s2);
    72. }
    73. }
    74. }
    75. /// <summary>
    76. /// 计算两个数字之间所有整数的和
    77. /// </summary>
    78. /// <param name="n1">头</param>
    79. /// <param name="n2">尾</param>
    80. /// <returns>返回的总和值</returns>
    81. public static int GetSum(int n1, int n2)
    82. {
    83. int sum = 0;
    84. for (int i = n1; i <= n2; i++)
    85. {
    86. sum += i;
    87. }
    88. return sum;
    89. }
    90. }
    91. }
    1. using System;
    2. using System.Collections.Generic;
    3. using System.Linq;
    4. using System.Text;
    5. using System.Threading.Tasks;
    6. namespace _42_方法的最后练习
    7. {
    8. class Program
    9. {
    10. static void Main(string[] args)
    11. {
    12. #region 1.有一个字符串数组,用一个方法来实现,输出最长的字符串
    13. ////1.有一个字符串数组,用一个方法来实现,输出最长的字符串
    14. //string[] names = { "花泽香菜", "水濑祈", "纮糖", "一之赖美琴", "白" };
    15. ////string s = "123456";
    16. ////Console.WriteLine(s.Length);
    17. ////Console.WriteLine(names.Length);
    18. //string longest = Getlongest(names);
    19. //Console.WriteLine(longest);
    20. #endregion
    21. #region 2.用方法来实现,请计算出一个整型数组的平均值,保留两位小数
    22. ////2.用方法来实现,请计算出一个整型数组的平均值,保留两位小数
    23. //int[] a = new int[10];
    24. //for (int i = 0; i < 10; i++)
    25. //{
    26. // a[i] = Convert.ToInt32(Console.ReadLine());
    27. //}
    28. //double avg = GetAvg(a);
    29. ////Console.WriteLine("{0:0.00}", avg);//仅在输出是改变,并未改变其本质
    30. ////保留两位小数 (下面两种方法都是四舍五入)
    31. //string s = avg.ToString("0.00");
    32. //avg = Convert.ToDouble(s);
    33. //Console.WriteLine(avg);
    34. ////Console.WriteLine(avg.ToString("0.00"));
    35. #endregion
    36. #region 3.写一个方法,用来判断用户输入的数字是否为质数
    37. //3.写一个方法,用来判断用户输入的数字是否为质数
    38. //再写一个方法,要求用户只能输入数字,输入有误就让用户一直输入
    39. //直到输入质数,程序才会结束
    40. while (true)
    41. {
    42. Console.WriteLine("请输入一个数字,将会判断它是否为质数");
    43. string strNumber = Console.ReadLine();
    44. int number = GetNumber(strNumber);
    45. bool b = IsPrime(number);
    46. Console.WriteLine(b);
    47. if (b == true)
    48. { break; };
    49. }
    50. #endregion
    51. Console.ReadKey();
    52. }
    53. /// <summary>
    54. /// 求最长的字符串
    55. /// </summary>
    56. /// <param name="s">输入的字符串数组</param>
    57. /// <returns>返回最长的字符串</returns>
    58. public static string Getlongest(string[] s)
    59. {
    60. string max = s[0];
    61. for (int i = 0; i < s.Length; i++)
    62. {
    63. if (s[i].Length > max.Length)
    64. {
    65. max = s[i];
    66. }
    67. }
    68. return max;
    69. }
    70. /// <summary>
    71. /// 计算一个整型数组的平均值,保留两位小数
    72. /// </summary>
    73. /// <param name="nums">整型数组</param>
    74. /// <returns>返回数组的平均值</returns>
    75. public static double GetAvg(int[] nums)
    76. {
    77. double sum = 0;
    78. for (int i = 0; i < nums.Length; i++)
    79. {
    80. sum += nums[i];
    81. }
    82. return sum / nums.Length;
    83. }
    84. /// <summary>
    85. /// 判断用户输入的是否为整数
    86. /// </summary>
    87. /// <param name="strNumber">用户输入的数据</param>
    88. /// <returns>返回整数</returns>
    89. public static int GetNumber(string strNumber)
    90. {
    91. while (true)
    92. {
    93. try
    94. {
    95. int number = Convert.ToInt32(strNumber);
    96. return number;
    97. }
    98. catch
    99. {
    100. Console.WriteLine("输入数据不是整数,请重新输入:");
    101. strNumber = Console.ReadLine();
    102. }
    103. }
    104. }
    105. /// <summary>
    106. /// 判断一个属是否为质数
    107. /// </summary>
    108. /// <param name="number">用户输入的数</param>
    109. /// <returns>返回是否为整数bool类型</returns>
    110. public static bool IsPrime(int number)
    111. {
    112. if (number < 2)
    113. {
    114. return false;
    115. }
    116. else
    117. {
    118. //让这个数字从2开始除 除到自身的前一位
    119. for (int i = 2; i < number; i++)
    120. {
    121. if (number % i == 0)
    122. {
    123. //给非质数准备的
    124. return false;
    125. }
    126. }
    127. //给质数准备的
    128. return true;
    129. }
    130. //return true; //放在这里也行
    131. }
    132. }
    133. }
    1. using System;
    2. namespace _043_方法的最后练习2
    3. {
    4. class Program
    5. {
    6. static void Main(string[] args)
    7. {
    8. #region 1.接受输入后判断其等级并显示出来
    9. ////1.接受输入后判断其等级并显示出来
    10. //Console.WriteLine("请输入考试成绩:");
    11. //int score = Convert.ToInt32(Console.ReadLine());
    12. //string level = getLevel(score);
    13. //Console.WriteLine(level);
    14. #endregion
    15. #region 2.将字符串数组{"中国","美国","巴西","澳大利亚","加拿大"}中的内容反转
    16. ////2.将字符串数组{"中国","美国","巴西","澳大利亚","加拿大"}中的内容反转
    17. //string[] names = { "中国", "美国", "巴西", "澳大利亚", "加拿大" };
    18. //Reverse(names);
    19. //for (int i = 0; i < names.Length; i++)
    20. //{
    21. // Console.WriteLine(names[i]);
    22. //}
    23. #endregion
    24. #region 3.计算圆的周长和面积
    25. ////3.计算圆的周长和面积
    26. //Console.WriteLine("请输入圆的半径:");
    27. //double r = Convert.ToDouble(Console.ReadLine());
    28. //double perimeter;
    29. //double area;
    30. //GetPerimeterArea(r,out perimeter,out area);
    31. //Console.WriteLine("圆的周长:{0:0.00},面积{1:0.00}", perimeter, area);
    32. #endregion
    33. Console.ReadKey();
    34. }
    35. /// <summary>
    36. /// 判断学生等级
    37. /// </summary>
    38. /// <param name="score">输入学生的分数</param>
    39. /// <returns>返回学生的等级</returns>
    40. public static string getLevel(int score)
    41. {
    42. string level = "";
    43. switch (score / 10)
    44. {
    45. case 10: level = "A+"; break;
    46. case 9: level = "A"; break;
    47. case 8: level = "A-"; break;
    48. case 7: level = "B+"; break;
    49. case 6: level = "B"; break;
    50. default:
    51. level = "C";
    52. break;
    53. }
    54. return level;
    55. }
    56. /// <summary>
    57. /// 将数组元素反转
    58. /// </summary>
    59. /// <param name="names">要被反转的数组</param>
    60. public static void Reverse(string[] names)
    61. {
    62. for (int i = 0; i < names.Length/2; i++)
    63. {
    64. string temp = names[i];
    65. names[i] = names[names.Length - 1 - i];
    66. names[names.Length - 1 - i] = temp;
    67. }
    68. }
    69. /// <summary>
    70. /// 计算圆的周长和面积
    71. /// </summary>
    72. /// <param name="r">圆的半径</param>
    73. /// <param name="perimeter">额外返回圆的周长</param>
    74. /// <param name="area">额外返回圆的面积</param>
    75. public static void GetPerimeterArea(double r,out double perimeter,out double area)
    76. {
    77. perimeter = 2 * 3.14 * r;
    78. area = 3.14 * r * r;
    79. }
    80. }
    81. }
    1. using System;
    2. namespace _044_方法的最后练习3
    3. {
    4. class Program
    5. {
    6. static void Main(string[] args)
    7. {
    8. #region 1.计算任意多个数的和(params)
    9. ////1.计算任意多个数的和
    10. //int sum = GetSum(1, 2, 3, 4, 5, 6, 7, 8);
    11. //Console.WriteLine(sum);
    12. #endregion
    13. #region 2.通过冒泡排序算法对数组实现升序排序
    14. ////2.通过冒泡排序算法对数组{3,2,56,43,8,76,23,1,87}实现升序排序
    15. //int[] nums = { 3, 2, 56, 43, 8, 76, 23, 1, 87 };
    16. //Sort(nums);
    17. //for (int i = 0; i < nums.Length; i++)
    18. //{
    19. // Console.WriteLine(nums[i]);
    20. //}
    21. #endregion
    22. #region 3.将一个字符串数组输出为|分割的形式
    23. ////3.将一个字符串数组输出为|分割的形式
    24. //string[] names = { "蕾姆", "是", "我的", "老婆" };
    25. //string str = ProcessString(names);
    26. //Console.WriteLine(str);
    27. #endregion
    28. Console.ReadKey();
    29. }
    30. /// <summary>
    31. /// 计算多个数的和
    32. /// </summary>
    33. /// <param name="nums">输入的数</param>
    34. /// <returns>返回的总和</returns>
    35. public static int GetSum(params int[] nums)
    36. {
    37. int sum = 0;
    38. for (int i = 0; i < nums.Length; i++)
    39. {
    40. sum += nums[i];
    41. }
    42. return sum;
    43. }
    44. /// <summary>
    45. /// 冒泡排序
    46. /// </summary>
    47. /// <param name="nums">需要排序的数组</param>
    48. public static void Sort(int[] nums)
    49. {
    50. for (int i = 0; i < nums.Length-1; i++)
    51. {
    52. for (int j = 0; j < nums.Length-1-i; j++)
    53. {
    54. if (nums[j] > nums[j + 1])
    55. {
    56. int temp = nums[j];
    57. nums[j] = nums[j + 1];
    58. nums[j + 1] = temp;
    59. }
    60. }
    61. }
    62. }
    63. /// <summary>
    64. /// 将一个字符串数组输出为|分割的形式
    65. /// </summary>
    66. /// <param name="names">输入的数组</param>
    67. /// <returns>返回为|分割的形式</returns>
    68. public static string ProcessString(string[] names)
    69. {
    70. string str = null;
    71. for (int i = 0; i < names.Length-1; i++)
    72. {
    73. str += names[i] + '|';
    74. }
    75. return str + names[names.Length - 1];
    76. }
    77. }
    78. }