关于 结构体 函数的应用

前几天学习了函数然后紧接着学了结构体。虽然没有什么新的算法,但是是对以前内容的重新运用,更重要的是,这两个知识点,可以让程序更加简洁而且可以有效地减轻工作量。于是乎,做了一个信息统计的程序(主要实现的功能是,可以增加任何项目包括考核项目等等,并且可以进行排序操作)。

小感想 :现定义结构体确定需要的数据类型。然后在主函数中定义数组,确定整个程序的模块(输入,计算 ,排序,输出等)最后完成函数构造;

示例::

 struct chengji//结构体

    {

        public string xingmin;

        public int yuwen;

        public int shuxue;

        public int zongfen;

        // public int mingci;

    }

 

    class Program

    {

        static chengji[] ShuRu(chengji[] cj)     //输入函数

        {

            for (int i = 0; i < cj.Length; i++)

            {

                Console.WriteLine("正在输入学生" + (i + 1) + "的信息");

                Console.WriteLine("请输入姓名:");

                cj[i].xingmin = Console.ReadLine();

                Console.WriteLine("请输入语文成绩:");

                cj[i].yuwen = Convert.ToInt32(Console.ReadLine());

                Console.WriteLine("请输入数学成绩:");

                cj[i].shuxue = Convert.ToInt32(Console.ReadLine());

                cj[i].zongfen = cj[i].yuwen + cj[i].shuxue;

                Console.Clear();

            }

            return cj;

 

        }

        static chengji[] PaiXu(chengji[] cj)     //排序函数

        {

            for (int i = 1; i <= cj.Length - 1; i++)

            {

                {

                    for (int j = 1; j <= cj.Length - i; j++)

                    {

                        if (cj[j].zongfen > cj[j - 1].zongfen)

                        {

                            chengji temp = cj[j];  //注意此处排序需要将整个数组进行排序

                            cj[j] = cj[j - 1];     //此处的chengji 为一个数组类型;

                            cj[j - 1] = temp;

                        }

                    }

                }

                          }

            return cj;

        }

        static chengji[] shuchu(chengji[] cj)   //输出函数

        {

            Console.WriteLine("姓名\t语文\t数学\t总分\t名次 ");

            for (int i = 0; i < cj.Length; i++)

            {                

                Console.WriteLine(cj[i].xingmin + "\t" + cj[i].yuwen + "\t" + cj[i].shuxue + "\t" + cj[i].zongfen + "\t" + (i + 1));

            }

 

            return cj;

        }

        static void Main(string[] args)

        {//输入 学生成绩并按照总分进行排序

            //输入

            chengji[] cj = new chengji[5];

            cj = ShuRu(cj);

            //排序

            cj = PaiXu(cj);

            //输出;

            cj = shuchu(cj);

}

 

posted on 2015-05-15 16:11  a-po  阅读(627)  评论(0编辑  收藏  举报