黑马程序员技术交流社区

标题: 数组 类型 [打印本页]

作者: 夜猫子进宅    时间: 2014-6-10 14:18
标题: 数组 类型
本帖最后由 夜猫子进宅 于 2014-6-10 14:45 编辑

           int[] nums = new int[60];
            for (int i = 1; i <= nums.Length; i++)
            {
                Console.WriteLine("请输入第{0}个学生的语文成绩",nums);
                int chinese =Convert.ToInt32( Console.ReadLine());
                Console.WriteLine("请输入第{0}个学生的数学成绩", nums);
                int math = Convert.ToInt32(Console.ReadLine());
                Console.WriteLine("请输入第{0}个学生的英语成绩", nums);
                int english = Convert.ToInt32(Console.ReadLine());
            }



结果如下图:



作者: ivanz    时间: 2014-6-10 14:22
本帖最后由 ivanz 于 2014-6-10 14:34 编辑

看你代码的意思是想要存储一个班级学生的成绩,但是如果你只定义了一个nums数组那你怎么把三个成绩同时存到一起呢?建议你定义一个类把三个成绩定义为字段存到里面,然自定义一个类数组。
具体代码如下:
   static void Main(string[] args)
        {
            Student[] stuInfo = new Student[5];
            for (int i = 1; i <= stuInfo.Length; i++)
            {
                stuInfo[i - 1] = new Student();
                Console.WriteLine("请输入第{0}个学生的语文成绩", i);
                stuInfo[i-1].Chinese =  Convert.ToInt32(Console.ReadLine());
                Console.WriteLine("请输入第{0}个学生的数学成绩", i);
                stuInfo[i - 1].Math = Convert.ToInt32(Console.ReadLine());
                Console.WriteLine("请输入第{0}个学生的英语成绩", i);
                stuInfo[i-1].English = Convert.ToInt32(Console.ReadLine());
            }
            int ncount = 0;
            foreach (Student item in stuInfo)
            {
                ncount++;
                Console.WriteLine("第{0}个学生的语文{1},数学{2},英语{3}",ncount,item.Chinese,item.Math,item.English);
            }
            Console.ReadKey();
        }
    }

    public class Student
    {
        private int _math;

        public int Math
        {
            get { return _math; }
            set { _math = value; }
        }

        private int _chinese;

        public int Chinese
        {
            get { return _chinese; }
            set { _chinese = value; }
        }

        private int _english;

        public int English
        {
            get { return _english; }
            set { _english = value; }
        }
    }

作者: czwanglei    时间: 2014-6-10 14:23
你的意思应该是nums改为i的结果吧
作者: 夜猫子进宅    时间: 2014-6-10 14:33
ivanz 发表于 2014-6-10 14:22
不太明白你那个nums数组是干嘛用的,但是但从你的问题上来看,可以把nums换成i ...

你理解的一点也没错:lol
作者: 夜猫子进宅    时间: 2014-6-10 14:34
czwanglei 发表于 2014-6-10 14:23
你的意思应该是nums改为i的结果吧

你理解的一点也没错:lol
作者: ivanz    时间: 2014-6-10 14:37
实现效果忘截图了。这里呢
作者: 夜猫子进宅    时间: 2014-6-10 14:41
ivanz 发表于 2014-6-10 14:37
实现效果忘截图了。这里呢

看起来好像很厉害的样子,,,我查查看有没有更简单表达方式去了
作者: 马林雷    时间: 2014-6-10 14:42
nums换成i就可以了,i在循环中才是自变量 其它都不变的
作者: 夜猫子进宅    时间: 2014-6-10 14:45
马林雷 发表于 2014-6-10 14:42
nums换成i就可以了,i在循环中才是自变量 其它都不变的

可以了,,,{{:2_36:}




欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/) 黑马程序员IT技术论坛 X3.2