黑马程序员——让用户输入数组元素值的方法

原创 2012年04月05日 23:19:24

---------------------- Windows Phone 7手机开发.Net培训、期待与您交流! ----------------------

  看C#基础最后几个视频时有一道练习是要求用方法实现找出一个int类型数组中最大值和最小值。因为没有给定int类型数组,我就想到让用户来输入数组元素的值,然后找出其中最大和最小值,而且这也用一个方法来实现,只是不知道这样数组元素个数由用户输入来决定的有没其它问题,记得C语言中数组元素的个数在定义时就应该确定,可是写出来的代码这些编译和运行都没有问题,C#中数组定义时元素的个数是可以用变量的么,还是因为其它原因,看来值得探究一下。而且还有一个问题,就是返回数组的问题,我没有定义一个数组来接收方法返回的用户输入的数组,怎么就直接返回给了我传的参数数组了呢,我想这应该是传递的数组是引用类型的关系。代码如下:

namespace _03练习
{
    class Program
    {
        static void Main(string[] args)
        {
            int n;
            Console.WriteLine("请输入数组的元素个数!");
            while (true)
            {
                if(int.TryParse(Console.ReadLine(),out n))
                {
                   break;
                }
                else
                {
                    Console.WriteLine("您输入的不是数字,请重新输入!");
                }
            }

            int[] nums = new int[n];            
            Evaluation(nums);//调用Evaluation方法给数组元素赋值

            int max, min, sum;
            sum = Sum(nums, out max, out min);//调用Sum方法求数组元素的和,并返回其中最大值与最小值
            
            Console.WriteLine("数组元素的和为:{0},最大值为:{1},最小值为:{2}", sum, max, min);

            Console.ReagKey();
        }

        /// <summary>
        /// 让用户给一个整数数组赋值
        /// </summary>
        /// <param name="numbers">要赋值的数组</param>
        /// <returns>已赋值的数组</returns>
        public static int[] Evaluation(int[] numbers)
        {
            for (int i = 0; i < numbers.Length; i++)
            {
                Console.WriteLine("请输入{0}个数组元素的值!", i + 1);
                if(int.TryParse(Console.ReadLine(),out numbers[i])==false)
                {
                    Console.WriteLine("输入的不是数字,请重新输入!");
                    i--; 
                }
            }
            return numbers;
        }

        /// <summary>
        /// 求数组中所有元素的和
        /// </summary>
        /// <param name="numbers">数组</param>
        /// <param name="max">最大值</param>
        /// <param name="min">最小值</param>
        /// <returns>数组元素的和</returns>
        public static int Sum(int[] numbers, out int max, out int min)
        {
            int sum = 0;
            max = numbers[0];
            min = numbers[0];
            for (int i = 0; i < numbers.Length; i++)
            {
                sum += numbers[i];
                if (numbers[i] > max)
                {
                    max = numbers[i];
                }
                if (numbers[i] < min)
                {
                    min = numbers[i];
                }
            }
            return sum;
        }

     }
}


---------------------- Windows Phone 7手机开发.Net培训、期待与您交流! ----------------------详细请查看:http://net.itheima.com/

Python学习笔记(3)用户输入&函数

《Python编程·从入门到实践》学习笔记,用户输入&函数部分。
  • twllx
  • twllx
  • 2017年07月13日 01:19
  • 615

java 输入一个正整数求各个位数这和

package javaSE_第二周; import java.util.Scanner; /*  *计算一个正整数求它各个位数之和  *问题:编写一个程序,让用户输入一个三位数的正整数值,然...
  • weishimeng17
  • weishimeng17
  • 2017年04月05日 15:42
  • 399

Shell脚本学习笔记-用户输入处理

1. 字符串操作
  • swordgirl2011
  • swordgirl2011
  • 2016年05月04日 01:44
  • 2081

《C Primer Plus(第五版)中文版》第5章第1至8题

1、编写一个程序。将用分钟表示的时间转换以小时和分钟表示的时间。使用#define或const定义一个60的常量,使用while来允许用户重复键入值,并且键入一个小于等于0的时间终止循环。 #incl...
  • vs9841
  • vs9841
  • 2015年03月17日 14:02
  • 1465

第四章:shell处理用户输入

1.命令行参数 向shell脚本传数据的最基本的方法是使用命令行参数,命令行参数允许在运行脚本时向命令行添加数据值 ./addem 10 30 向脚本addem传递了两个命令行参数(10和30),...
  • zhengwei125
  • zhengwei125
  • 2016年12月16日 18:08
  • 391

JS+PHP实现用户输入数字后取得最大的值并显示为第几个

目的:分清JS PHP的区别,拓宽思维 分析 1.利用JS的prompt输入用户想要输入的值. 2.利用HTML表单的text标签将输入的值传递给PHP处理文件 3.PHP进行数值判定,选出最...
  • gongxiaojiu
  • gongxiaojiu
  • 2017年06月18日 16:03
  • 235

JSP获取用户输入

 通过request对象       request对象的类型为HttpServletRequest。在JSP翻译成的Java类中,有这样的函数: public void _jspService(Ht...
  • sheismylife
  • sheismylife
  • 2007年09月21日 16:41
  • 6520

java 数组元素位移的简单方法(ArrayList add方法源码)

ArrayList中有个方法是public void add(int index, E object) 这个方法是在第index位置上插入元素。 按照常规做法,肯定是,将数组中index(包括in...
  • gacmy
  • gacmy
  • 2016年07月05日 16:16
  • 1395

python之验证用户输入

小白粗试 编译环境:Python 3.5.3 内容:允许脚本用户进行三次尝试 #date:2017年8月25日20:25:28 max_attempts=3 the_word='gululu...
  • qq_38632611
  • qq_38632611
  • 2017年08月25日 20:43
  • 127

Java中获取用户输入值的四种方法

1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 1...
  • njupt16020515
  • njupt16020515
  • 2017年03月16日 23:33
  • 540
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:黑马程序员——让用户输入数组元素值的方法
举报原因:
原因补充:

(最多只允许输入30个字)