| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 11268 人关注过本帖
标题:C#问题定义一个学生类CStudent
只看楼主 加入收藏
jingheiye
Rank: 1
等 级:新手上路
帖 子:3
专家分:0
注 册:2011-3-21
结帖率:100%
收藏
已结贴  问题点数:20 回复次数:6 
C#问题定义一个学生类CStudent
定义一个学生类CStudent,该类功能如下:
包含学生的姓名、性别、年龄、学号信息。
在类中设置一个变量来记录共有多少个学生,即共为该类生成多少个实例,
具有可以输出生成实例个数的方法。
具有可输入/输出学生信息的成员函数,
派生出两个子类:全日制学生和业余在职学生。全日制学生添加监护人姓名及联系方式,业余在职学生添加工作单位及联系方式。
重载输入/输出成员函数以便输入/输出新添加的数据。


我不明白最后一句“重载输入/输出成员函数以便输入/输出新添加的数据”


using System;
using System.Collections.Generic;
using System.Text;

namespace ConsoleApplication7
{



    class CStudent
    {
        public string name;///名字
        public string xingpie;///性别
        public int nianling;///年龄
        public int xurhao;///学号
        public int count;///记录学生的个数
        public void shuchu()
        {
            Console.Write("请输入名字:");
            name = Console.ReadLine();
            Console.Write("请输入性别:");
            xingpie = Console.ReadLine();
            Console.Write("请输入年龄:");
            nianling = Convert.ToString(Console.ReadLine());
            Console.Write("请输入学号:");
            xurhao = Convert.ToString(Console.ReadLine());

            count++;

        }


        public void shuchu()
        {
            Console.WriteLine("名字:", name);
            Console.WriteLine("性别:", xingpie);
            Console.WriteLine("年龄:", nianling);
            Console.WriteLine("学号:", xurhao);
            Console .WriteLine ("学生的个数为:",count );
        }

    }


    class CSgongong : CStudent
    {
        public string jianhuren;
        public float dianhua;


    }

    class CSyuye : CStudent
    {
        public string gongzuodanwe;
        public float lianxidian;

    }



    class Program
    {
        static void Main(string[] args)
        {

            CStudent a = new CStudent();
            CSgongong b=new CSgongong ();
            CSyuye c=new CSyuye ();

        }
    }
}
搜索更多相关主题的帖子: 联系方式 监护人 全日制 姓名 
2011-03-22 12:50
zkmhywgsym
Rank: 2
等 级:论坛游民
帖 子:38
专家分:98
注 册:2011-3-5
收藏
得分:10 
是不是你自己编的啊,好像程序和题目不太符合啊
2011-03-22 19:56
jingheiye
Rank: 1
等 级:新手上路
帖 子:3
专家分:0
注 册:2011-3-21
收藏
得分:0 
是我自己编的....那里不对能指出来吗?我是菜鸟...
2011-03-22 22:22
zkmhywgsym
Rank: 2
等 级:论坛游民
帖 子:38
专家分:98
注 册:2011-3-5
收藏
得分:0 
是这样的,题目要求的是有N个学生,要都能输入输出,你的程序还只能输一个吧。在改下吧,最好输出已经输入的学生资料,方便查看未输入的


也就是在完善下,从实用性看也是还得改改啊
2011-03-23 10:45
zhp223
Rank: 5Rank: 5
等 级:职业侠客
帖 子:99
专家分:362
注 册:2010-3-21
收藏
得分:10 
1、“在类中设置一个变量来记录共有多少个学生,即共为该类生成多少个实例”,这个变量应该是静态的,并且在构造函数中进行加1
2、“重载输入/输出成员函数以便输入/输出新添加的数据”,不同类型的学生输入输出的数据是不一样的,重载CStudent中的输入/输出方法进行不同的操作,
CStudent中的输入/输出方法应该是虚方法


    class CStudent
    {
        public string name;///名字
        public string xingpie;///性别
        public int nianling;///年龄
        public int xurhao;///学号
        public static int count = 0;///记录学生的个数
        // 构造函数中count加1
        public CStudent()
        {
            count++;
        }
        public virtual void shuru()
        {
            Console.Write("请输入名字:");
            name = Console.ReadLine();
            Console.Write("请输入性别:");
            xingpie = Console.ReadLine();
            Console.Write("请输入年龄:");
            nianling = Convert.ToString(Console.ReadLine());
            Console.Write("请输入学号:");
            xurhao = Convert.ToString(Console.ReadLine());
        }


        public virtual void shuchu()
        {
            Console.WriteLine("名字:", name);
            Console.WriteLine("性别:", xingpie);
            Console.WriteLine("年龄:", nianling);
            Console.WriteLine("学号:", xurhao);
            Console .WriteLine ("学生的个数为:",count );
        }

    }


    class CSgongong : CStudent
    {
        public string jianhuren;
        public string dianhua;
        public override void shuru()
        {
            base.shuru();
            Console.Write("请输入监护人:");
            jianhuren= Console.ReadLine();
            Console.Write("请输入电话:");
            dianhua= Convert.ToString(Console.ReadLine());
        }
        public override void shuchu()
        {
            base.shuchu();
            Console.WriteLine("监护人:", xingpie);
            Console.WriteLine("电话:", nianling);
        }
    }

    class CSyuye : CStudent
    {
        public string gongzuodanwe;
        public string lianxidian;
        // 和CSgonggong类似
    }

    class Program
    {
        static void Main(string[] args)
        {
            CStudent a = new CStudent();
            CStudent b=new CSgongong ();
            CStudent c=new CSyuye ();
            a.shuru();
            b.shuru();
            c.shuru();
            a.shuchu();
            b.shuchu();
            c.shuchu();
        }
    }
}

日有所思,夜有所梦
2011-03-23 12:19
zkmhywgsym
Rank: 2
等 级:论坛游民
帖 子:38
专家分:98
注 册:2011-3-5
收藏
得分:0 
嗯,楼上的也是种方法
2011-03-24 17:49
丫运
Rank: 1
等 级:新手上路
帖 子:10
专家分:0
注 册:2011-3-26
收藏
得分:0 
上面的两行代码把string类型转为int类型nianling = Convert.ToString(Console.ReadLine())和xurhao= Convert.ToString(Console.ReadLine()),我觉得是这样好点吧nianling = int.Parse(Console.ReadLine())和xurhao = int.Parse (Console.ReadLine())。

开始我在凝望,最后我在歌唱。。。。
2011-03-26 02:14
快速回复:C#问题定义一个学生类CStudent
数据加载中...
 
   



关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.015234 second(s), 7 queries.
Copyright©2004-2024, BCCN.NET, All Rights Reserved